Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Windows 8 RTM - foobar 1.1.13 - shell integration (Read 12998 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Windows 8 RTM - foobar 1.1.13 - shell integration

hello,
Windows 8 RTM was released few days ago,
foobar 1.1.13 seems to work, I can listen to music with no problem.
I just noticed that in shell integration menu, the link to manage file type associations doesnt work at all.
nothing happens.

when i right clic on some music file, i can see "enqueue to foobar or play into foobar, depending of your configuration.

I saw no other issue for the moment,
have a nice day.

ailef.

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #1
So far there is no official support for Windows 8, so it cannot be guaranteed that everything will work in 8 like in 7. Nevertheless I assume that Peter will address any known problems with Windows 8 in time for its release, so, thanks for the report.
It's only audiophile if it's inconvenient.

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #2
Windows 8 does not allow programs to associate themselves manually. They will register that they handle a particular file type just like they would with Windows 7, only instead of associating by default or providing a dialog to associate any or all with the program, it will instead allow the user to select the next time they open any of the supported file types. Or at least, that's the way the Consumer Preview was.

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #3
In Win8 Consumer Preview and Release Preview it works OK, link to manage file type associations doesn't work in Win8 RTM.

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #4
Known issue. That dialog doesn't exist in Windows 8. Programs register themselves as supporting particular file types, and then the next time you attempt to open one of those file types from the shell, it will ask you which registered program to use to open the file.

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #5
Windows 8 seems to have changed shell integration semantics. This will be looked into before the next foobar2000 update (1.1.15).
Microsoft Windows: We can't script here, this is bat country.

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #6
Known issue. That dialog doesn't exist in Windows 8. Programs register themselves as supporting particular file types, and then the next time you attempt to open one of those file types from the shell, it will ask you which registered program to use to open the file.


Media Player Classic Home Cinema was able to insert itself in the default programs menu successfully for me in Windows 8 RTM, without needing me to open an associated file beforehand, while foobar2000 wasn't able to register itself at all: it's unlisted on both Default Programs and the file-triggered selection dialog. Also, according to MSDN, only the interface for programatically querying or setting if your program's defaults was deprecated, not the ability to show a system dialog allowing the user to do so.

IApplicationAssociationRegistration: noted as deprecated in Windows 8
IApplicationAssociationRegistrationUI: no such note

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #7
Since MPC-HC's assocs. work and foobar's don't, I decided to snoop around a bit. All of foobar's registry keys seem OK, they only difference I see is that MPC does not have a context menu handler DLL. So I tried creating the keys manually without it, and foobar still doesn't show up in Default Programs.

Looking at MPC's source code, I see it does still call IApplicationAssociationRegistration.SetAppAsDefault(), which apparently was deprecated by Microsoft (or the MSDN documentation is wrong, which wouldn't be unusual). Does foobar2000 do that as well?

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #8
We use IApplicationAssociationRegistrationUI (not deprecated).
It looks like whatever we write to registry is not being correctly read back by the control panel applet, and since there's no page about fb2k to show in the control panel (as our info from the registry is being ignored), our link to the control panel page does not work.
Microsoft Windows: We can't script here, this is bat country.

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #9
Apparently replacing the foobar2000 executable with something else makes everything work as expected. I assumed the problem was the lack of digital signature, but MPC-HC is unsigned and works just fine. Don't know that possibly could make Windows outright reject foobar's executable...

Windows 8 RTM - foobar 1.1.13 - shell integration

Reply #10
Apparently the problem is related to missing "company name" field in the version resource (thanks to Case for figuring this out). I say this is a bug in Windows 8, but the next fb2k update will solve this.
Microsoft Windows: We can't script here, this is bat country.