2

I'd like to set a program as the 'default browser', so that for example, it'll be opened when addresses like http://google.com/ are opened by another program or Windows. At first I assumed this was the same as XP (via HKCR), but I found that you need to use the 'Default Programs' feature of Vista[+]. The relevant key is stored, I think, at HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice, but for me that's just 'FirefoxURL', which I assume maps to some larger key elsewhere.

How should this be done properly?

I've also found that you can use IApplicationAssociationRegistration, but there doesn't seen to be any .NET wrappers around it and I can't find out for the life of me how to go about using it.

Any information about how other programs do this or just hints in the right direction is greatly appreciated.

Elmo
  • 6,409
  • 16
  • 72
  • 140
K893824
  • 1,279
  • 8
  • 21

1 Answers1

1

You're basically in the right place:

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations

The "gotcha" is that there are a bunch of subkeys you need to set:

paulsm4
  • 114,292
  • 17
  • 138
  • 190