UPDATE 24.10.2018 – Version 1.3 is completely coded from scratch. New features: Supports ALL Browsers (any installed Browser, portable Browsers, App-V Browsers, AppData Browsers, etc.), start delay option added, full Unicode support, includes EULA.
UPDATE 16.12.2017 – Version 1.2 now supports Windows 8/8.1 and Server 2012/R2.
UPDATE 10.12.2017 – running Windows 1703 and newer, you can now use my SetUserFTA utility to change the default browser. Just make sure you set .htm. html, http and https properly.
if you are into XenApp, RDS or VDI, then you probably know how difficult it is to configure the environment properly for the enduser nowadays. in my latest blog article, i showed you how to configure File Type Associations per User. based on this previous work i have created a utility that can do the same for the Default Browser.
the story behind is pretty much the same, but to set a Browser, additional Registry Keys are needed (they are protected with the hash just like the file types). the only difference is, that Microsoft also checks the path of the Browser – on certain Windows builds. for that reason i decided to create a separate tool to make it as simple as possible.
newer windows builds don’t check the path of the browser anymore and therefore the hash changed too – but i have updated my tool to support following operating systems:
- Windows 10 x86/x64 Build 1607, 1703, 1709, 1803, 1809
- Server 2016 Build 1607
- Server 2019 Build 1809
- Windows 8 and 8.1
- Server 2012 and 2012 R2
if you want to know more about the technical details, please read my previous blog post.
how to use
its really simple. just run SetDefaultBrowser.exe in the user context (there is a list of possible ways in my previous blog) with the the hive and browser of your choice. Since the version 1.3 there are more parameters and it might look complicated, but it gives you actually much more flexibility. Just run SetDefaultBrowser without parameters to get a list of all available browsers:
as you can see, i have a ton of Browsers on my system and using the following examples i can change the default Browser:
- SetDefaultBrowser.exe HKLM Firefox-308046B0AF4A39CB
- this will set the x64 Firefox as my default
- SetDefaultBrowser HKCU “Google Chrome.HEYY3KJOYOAJOPVCHWOFAPMTPI”
- this will set the Chrome that is only installed in my AppData as my default
- SetDefaultBrowser.exe HKLM Edge delay=1000
- this will set Edge as my default browser, but will wait 1 second until it executes. delay must be provided in milliseconds.
- SetDefaultBrowser.exe HKLM IEXPLORE.EXE group=IE_Users
- this will set IE as my default Browser, if i am member of the IE_Users group
i hope these examples explain the possibilities and parameters clearly. if a browser identifier contains a space, you must use quotes – for example “Google Chrome”. the same applies to group names (but you also can use Domain\Group or email@example.com).
to maintain limited compatibility with the older versions of SetDefaultBrowser, i have added shortcuts to the most used Browsers
- SetDefaultBrowser.exe chrome
- this will set Chrome as my default Browser, when its available in HKLM
- SetDefaultBrowser.exe ie delay=2000
- this will set Internet Explorer as my default Browser but delays two seconds before
- SetDefaultBrowser edge group=EdgeUsers
- this will make Edge the default if the user is member of the EdgeUsers group
available shortcuts are: chrome, ie, iexplore and edge. i had to skip Firefox, since you can have multiple Firefox installations (for example x64 and x86, like on the screenshot above) and using the hive and browser parameter, you can better specify which one you want to set as default.
SetDefaultBrowser will also find the browser when it is not installed at the default path.
the easiest way in an enterprise environment is to use the Group Policy Logon Script feature (you need loopback mode activated, when deploying to computers) – but there are many other ways (check the SetUserFTA blog for more ideas).
IMPORTANT: a portable Browser must be registered in the registry first to work with SetDefaultBrowser. You can learn how to do that in my blog post.
if you still see this screen after you used SetDefaultBrowser:
then try this registry key (needs an explorer.exe restart or just a re-login):
this registry key also works with HKEY_CURRENT_USER!
or enable the GPO Do not show the ‘new application installed’ notification (Windows Components, File Explorer).
if you find a bug or have a special request, you can send me an email to bugs@ mydomain (the one in the browser address bar).
ATTENTION: SetDefaultBrowser 1.3 does not work with Microsoft Edge Chromium. I will release a proper update in about two weeks. In the meantime you can use this temporary version, which contains a workaround.
SetDefaultBrowser v1.3.1 - only use this if you need Microsoft Edge Chromium support! this version cannot set Edge UWP as the default browser using "HLKM Microsoft Edge" but you can use "SetDefaultBrowser.exe Edge" instead. SHA256: EB6EDB7BA82F2EB1FE7196D766F9124283E6D26E9FC58826332CDDCFE0385611
download SetDefaultBrowser v1.3 here (no Microsoft Edge Chromium support). SHA265 hashes below.
Version 1.0 – first public version
Version 1.0.1 – additional Firefox detection
Version 1.1 – now working on Windows 1703 and 1709, opera support added
Version 1.2 – support for Windows 8.x and Server 2012/R2 added
Version 1.3 – support for ALL Browsers, delayed start, full Unicode, EULA