Downloads of v 1.5.0:


Last Update:

20 Feb 2020

Package Maintainer(s):

Software Author(s):

  • Christoph Kolbicz


tool set default browser windows 10


1.5.0 | Updated: 20 Feb 2020



Downloads of v 1.5.0:



Software Author(s):

  • Christoph Kolbicz

SetDefaultBrowser 1.5.0

All Checks are Passing

2 Passing Test

Validation Testing Passed

Verification Testing Passed


To install SetDefaultBrowser, run the following command from the command line or from PowerShell:


To upgrade SetDefaultBrowser, run the following command from the command line or from PowerShell:


To uninstall SetDefaultBrowser, run the following command from the command line or from PowerShell:


NOTE: This applies to both open source and commercial editions of Chocolatey.

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Enter your internal repository url

(this should look similar to

4. Choose your deployment method:

choco upgrade setdefaultbrowser -y --source="'STEP 3 URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:

choco upgrade setdefaultbrowser -y --source="'STEP 3 URL'"

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0

Exit $exitCode

- name: Ensure setdefaultbrowser installed
    name: setdefaultbrowser
    state: present
    version: 1.5.0
    source: STEP 3 URL

See docs at

Coming early 2020! Central Managment Reporting available now! More information...

chocolatey_package 'setdefaultbrowser' do
  action    :install
  version  '1.5.0'
  source   'STEP 3 URL'

See docs at

    Name: setdefaultbrowser,
    Version: 1.5.0,
    Source: STEP 3 URL

Requires Otter Chocolatey Extension. See docs at

cChocoPackageInstaller setdefaultbrowser
   Name     = 'setdefaultbrowser'
   Ensure   = 'Present'
   Version  = '1.5.0'
   Source   = 'STEP 3 URL'

Requires cChoco DSC Resource. See docs at

package { 'setdefaultbrowser':
  provider => 'chocolatey',
  ensure   => '1.5.0',
  source   => 'STEP 3 URL',

Requires Puppet Chocolatey Provider module. See docs at

salt '*' chocolatey.install setdefaultbrowser version="1.5.0" source="STEP 3 URL"

See docs at

5. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

This package was approved as a trusted package on 20 Feb 2020.


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
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 protected]).

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.


SetDefaultBrowser by Christoph Kolbicz -, 2018

This End-User License Agreement (EULA) is a legal agreement between you and the mentioned author of this Software for the software product identified above, which includes computer software and may include associated media, printed materials, and "online" or electronic documentation ("Software Product").

By installing, copying, or otherwise using the Software Product, you agree to be bounded by the terms of this EULA. If you do not agree to the terms of this EULA, do not install or use the Software Product.


a) SetDefaultBrowser is being distributed as Freeware for personal, commercial use, non-profit organization and educational purpose. It may be included with CD-ROM/DVD-ROM distributions. You are NOT allowed to make a charge for distributing this Software (either for profit or merely to recover your media and distribution costs) whether as a stand-alone product, or as part of a compilation or anthology, nor to use it for supporting your business or customers. It may be distributed freely on any website or through any other distribution mechanism, as long as no part of it is changed in any way and appropriate credits are given.

1. Grant of License. This EULA grants you the following rights:

Installation and Use. 

You may install and use an unlimited number of copies of the Software Product.

Reproduction and Distribution. 

You may reproduce and distribute an unlimited number of copies of the Software Product; provided that each copy shall be a true, unmodified and complete copy, including all copyright and trademark notices, and shall be accompanied by a copy of this EULA.

Copies of the Software Product may be distributed as a standalone product or included with your own product as long as The Software Product is not sold or included in a product or package that intends to receive benefits through the inclusion of the Software Product.

The Software Product may be included in any free or non-profit packages or products.

2. Description of Rights and Limitations. 

Software Transfer. 

You may permanently transfer all of your rights under this EULA, provided the recipient agrees to the terms of this EULA.


Without prejudice to any other rights, the Author of this Software may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In such event, you must destroy all copies of the Software Product and all of its component parts.

3. Copyright. 

All title and copyrights in and to the Software Product (including but not limited to any images, photographs, clipart, libraries, and examples incorporated into the Software Product), the accompanying printed materials, and any copies of the Software Product are owned by the Author of this Software. The Software Product is protected by copyright laws and international treaty provisions. Therefore, you must treat the Software Product like any other copyrighted material. The licensed users or licensed company can use all functions, example, templates, clipart, libraries and symbols in the Software Product to create new diagrams and distribute the diagrams.


No Warranties. 

The Author of this Software expressly disclaims any warranty for the Software Product. The Software Product and any related documentation is provided "as is" without warranty of any kind, either express or implied, including, without limitation, the implied warranties or merchantability, fitness for a particular purpose, or noninfringement. The entire risk arising out of use or performance of the Software Product remains with you.

No Liability for Damages. 

In no event shall the author of this Software be liable for any special, consequential, incidental or indirect damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use this product, even if the Author of this Software is aware of the possibility of such damages and known defects.

Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.

Package can be verified like this:

1. Go to


   to download the installer.

2. You can use one of the following methods to obtain the SHA256 checksum:
   - Use powershell function 'Get-FileHash'
   - Use Chocolatey utility 'checksum.exe'

   checksum32: 6A4EE8731BBE780D547163E8FE17003F66CEADA8B528278E7E74274E71CAA1D8

File 'LICENSE.txt' is obtained from:
    EULA.txt included in .zip-File
$ErrorActionPreference = 'Stop'

$toolsPath = Split-Path $MyInvocation.MyCommand.Definition

$packageArgs = @{
  PackageName    = 'setdefaultbrowser'
  FileFullPath   = Get-Item $toolsPath\*
  Destination    = $toolsPath

Get-ChildItem $toolsPath\* | Where-Object { $_.PSISContainer } | Remove-Item -Recurse -Force #remove older package dirs
Get-ChocolateyUnzip @packageArgs
Remove-Item $toolsPath\*.zip -ea 0
md5: CEA8C863BB9B9F607B378E619F31A708 | sha1: 2692795B8B843A8AFF75C34BBA5D12D336657B33 | sha256: 6A4EE8731BBE780D547163E8FE17003F66CEADA8B528278E7E74274E71CAA1D8 | sha512: 2D144F2E392033489911D3D3CB9EE956772CC332800D3BED4942D26C99756FB502516D33290A4362ACEFAE991DABE87193104C96965E242D986B072D74E874CE

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Version Downloads Last Updated Status
SetDefaultBrowser 1.4 583 Thursday, February 6, 2020 Approved
SetDefaultBrowser 2812 Saturday, April 27, 2019 Approved
SetDefaultBrowser 1.3 569 Thursday, October 25, 2018 Approved

This package has no dependencies.

Discussion for the SetDefaultBrowser Package

Ground Rules:

  • This discussion is only about SetDefaultBrowser and the SetDefaultBrowser package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or SetDefaultBrowser, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus