How to set Firefox as the default browser under Windows 10 when it does not show up in the default program list under “Default apps”
1 Summary: after re-install Firefox (version 65.01 64-bit), I cannot set it as the default browser of Windows 10. It turned out that the registry entry of Firefox was messed up.
1.2 the two major Firefox registry entries are: FirefoxHTML, FirefoxURL
1.3 detailed settings
- FirefoxHTML
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML] @="Firefox Document" "FriendlyTypeName"="Firefox Document" "EditFlags"=dword:00000002 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\DefaultIcon] @="C:\\Program Files\\Mozilla Firefox\\firefox.exe,1" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\shell] @="open" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\shell\open] [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\shell\open\command] @="\"C:\\Program Files\\Mozilla Firefox\\firefox.exe\" -osint -url \"%1\"" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\shell\open\ddeexec] @=""
- FirefoxURL
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL] @="Firefox URL" "FriendlyTypeName"="Firefox URL" "URL Protocol"="" "EditFlags"=dword:00000002 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\DefaultIcon] @="C:\\Program Files\\Mozilla Firefox\\firefox.exe,1" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\shell] @="open" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\shell\open] [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\shell\open\command] @="\"C:\\Program Files\\Mozilla Firefox\\firefox.exe\" -osint -url \"%1\"" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\shell\open\ddeexec] @=""
1.4 how I figured out this is the issue
- I compared the settings of Chrome, which also has ChromeHTML and ChromeURL
- I also found the FirefoxHTML and FirefoxURL entries, but the original settings were strange (the “kernel32::GetLongPathNameW” lines below):
- FirefoxHTML
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML] @="Firefox HTML Document" "FriendlyTypeName"="Firefox HTML Document" "EditFlags"=dword:00000002 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\Application] [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\DefaultIcon] @="C:\\Program Files\\Mozilla Firefox\\firefox.exe,0" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\shell] @="open" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\shell\open] [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\shell\open\command] @="\"kernel32::GetLongPathNameW(w R8, w .R7, i 1024)i .R6\" -osint -url \"%1\"" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxHTML\shell\open\ddeexec] @=""
- FirefoxURL
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL] @="Firefox URL" "FriendlyTypeName"="Firefox URL" "URL Protocol"="" "EditFlags"=dword:00000002 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\DefaultIcon] @="kernel32::GetLongPathNameW(w R8, w .R7, i 1024)i .R6,1" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\shell] @="open" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\shell\open] [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\shell\open\command] @="\"kernel32::GetLongPathNameW(w R8, w .R7, i 1024)i .R6\" -osint -url \"%1\"" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FirefoxURL\shell\open\ddeexec] @=""
- FirefoxHTML
- I also found in the registry another pair of FirefoxHTML-XXXXX and FirefoxURL-XXXXX (with XXXXX being a random alphanumeric string). So I thought, maybe the messy FirefoxHTML and FirefoxURL were from the old installation, and the -XXXXX version were the correct version.