Update 4th August 2018
Hopefully most people are on IE11 now – it’s pretty much the same process as below, but here’s an official Microsoft blog telling you how to do it.
Original Post
Automating the change of Internet Explorer 10’s default search engine from Bing to Google shouldn’t be a difficult task, but it is. I’ll first cover what we’re trying to automate, then the possible options on how to do it.
I found a lot of misinformation online when doing this too which was surprising, I’ll add notes in around what I found on that too.
Brief instructions are down the bottom if you just want to know what to do!
To do this manually on an individual PC, you need to do two things. Install the Search Provider addon, and then set it as the default.
The first part can be done by going to the iegallery website and finding an Add-on, for Google Search you can go here: http://www.iegallery.com/en-us/Addons/Details/813 and click the big ‘Add to Internet Explorer’ button.
Setting it as the default is possible from the popup when clicking the button, or going into your Add-ons and ticking the right search engine as your default.
Google provides some very basic instructions here https://support.google.com/websearch/answer/464?hl=en which are:
Internet Explorer 10
- Click the Gear icon in the top right corner of the browser window.
- Select Manage add-ons.
- Select Search Providers.
- In the bottom left corner of your screen, click Find more search providers.
- Select Google.
- Click the Add to Internet Explorer button.
- When the window appears, check the box next to Make this my default search provider.
- Click Add.
So far this is incredibly simple!
If you were starting from scratch, you can package up IE10 using the Internet Explorer Administration Kit (IEAK) and add in extra search engines as well as specify the default. There’s a good guide at 4syops here http://4sysops.com/archives/internet-explorer-10-administration-part-4-ieak-10/ which covers this, but doesn’t help you if PCs already have IE10, or will get it via other means (e.g. WSUS or manual installs).
Group Policy is the obvious choice, but there is no inbuilt way to configure search engines natively via normal Group Policy Preferences. Preferences can be used to deploy registry settings though, which can configure pretty much everything IE does.
There are a lot of sites that have ADM files that claim they will configure IE’s search engine. They will, but there are a lot of caveats. One commonly found blog is http://blogofanitadmin.blogspot.com.es/2011/05/group-policy-changing-default-search.html which is a neat solution, but not ideal and here’s why.
The ADM file is just setting a few registry settings. Search providers are added into the registry under HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\ which lets the user change or configure it themselves, or under [HKEY_CURRENT_USER\Software\Policies\\Microsoft\Internet Explorer\SearchScopes\ which forces the settings upon the user.
If you’re using Policies path, you also probably want to set the Group Policy ‘Restrict search providers to a specific list of providers’ Group Policy under User Configuration > Policies > Administrative Templates > Windows Components > Internet Explorer. This will mean users can’t add their own search engines. If you don’t enable it, users can’t change settings on the search engines you’re pushing out, but can add others. Edit: Check Tim’s comment here for the registry setting on this one
Each added search provider has it’s own GUID randomly generated under the SearchScopes Key. One of Bing’s default GUIDs is {0633EE93-D776-472f-A0FF-E1416B8B2E3A} but this may differ based on OS etc. The full key path is HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{0633EE93-D776-472f-A0FF-E1416B8B2E3A} in that example, and under that key lives all the settings for that search provider.
The standard settings for a search provider (Google in this example) there are:
“URL”=”http://www.google.com.au/search?q={searchTerms}&sourceid=ie7&rls=com.microsoft:{language}:{referrer:source}&ie={inputEncoding?}&oe={outputEncoding?}”
URL is the address used when you type a non-http formatted address into the URL address bar. It will put what you type into the {searchTerms} part, and pass that onto the full URL.
“SuggestionsURL”=”http://clients5.google.com.au/complete/search?q={searchTerms}&client=ie8&mw={ie:maxWidth}&sh={ie:sectionHeight}&rh={ie:rowHeight}&inputencoding={inputEncoding}&outputencoding={outputEncoding}”
SuggestionsURL is just where the search engine will get it’s suggestions from.
“ShowSearchSuggestions”=dword:00000001
ShowSearchSuggestions is an on or off option (0 off, 1 on) to configure if you’ll be shown the search suggestions or not.
“FaviconURL”=”http://www.google.com/favicon.ico”
FaviconURL is the little icon that appears in a few different spots in IE when doing searches.
“DisplayName”=”Google”
DisplayName just shows the name of the search provider in a few areas, this can be anything you want.
“OSDFileURL”=”http://www.iegallery.com/en-us/AddOns/DownloadAddOn?resourceId=813”
OSDFileURL is where the addon was obtained from, I’m not sure of the importance on this.
“FaviconPath”=”C:\\Users\\username\\AppData\\LocalLow\\Microsoft\\Internet Explorer\\Services\\search_{0533EE93-D776-472f-A0FF-E1416B8B2E3A}.ico”
This will point to a local icon, it’s just a local copy of the FaviconURL ico file.
Getting back to GUIDs, they are randomly generated and don’t matter, as long as they’re unique. A lot of blogs seem to indicate there are particular ones for particular search engines, as well as amazingly saying:
the Bing key is {9F4BEE75-5E51-4568-87AF-67C35184D4B5} and Google is {9F4BEE75-5E51-4568-87AF-67C35184D4B5}.
Several people have decided to copy and paste this (just like I have), but failed to realise they’re the exact same key!
So far this is fine, but will not set the default search engine. The registry key that stores the default is located back in HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\ under ‘DefaultScope’ and will match the GUID of the search engine.
If you do this though via Group Policy Preferences, the user will be prompted saying “An unknown program would like to change your default search provider to Google” which isn’t ideal at all. If your settings are being continually pushed then they’ll keep getting the popup, or if it’s a once off it’s still intrusive. You can push out the registry key once based on a version match of iexplore.exe to try and get it happening at the same time as the IE10 rollout, but that’s hardly clean (and still annoys all your users).
You can use the Policies registry path of HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\SearchScopes\ to force Google as the default, but remember this isn’t user configurable. Fine if you’re forcing Google as the default for everyone, but it doesn’t let people change their default search provider.
I’ve seen a few other suggestions on how to suppress the popup, but from my research it’s not possible without forcing the option. “Turn Off the Security Settings Check Feature” in Group Policy was a suggestion, but that just suppresses the message “Your current security settings put your computer at risk” and has nothing to do with the search provider popup.
There’s also the “Prevent programs from suggesting changes to my default search provider” option but that just toggles between absolutely blocking changes, or prompting.
Also I found that having some conflicting registry settings would make IE just go back to Bing after doing a search, even though it would do the first search with the new default Google – so make sure you’re taking a minimalist approach and have done proper testing of your settings.
There’s also a difference between IE8 and IE10 – IE10 doesn’t have a dedicated search bar, it just uses the URL bar. So when you’re doing a search it will use the settings of the current default search engine’s URL registry value which IE8 may not use.
Another catch is that the HKEY_LOCAL_MACHINE setting for the default search provider may be set, and that will override any user setting. That can be deleted.
If no search providers exist under the current user’s SearchScopes then IE10 will still use Bing, but use the URL string under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\SearchScopes\{0633EE93-D776-472f-A0FF-E1416B8B2E3A}.
If you’d rather just have Google do a search based on anything you type in the URL field, you can either modify the Bing URL key under the current user, or delete all search providers and change the HKLM URL.
Again, all the ADMs I could find were just based on the few above registry keys – do the keys yourself and give yourself the flexibility to adjust them if required, rather than copying and pasting someone else’s. If Google or Bing changed a URL they used you want to be able to adjust this quickly.
So what this all comes down to is there’s no way I could find to do both a silent install of a search engine and default it, without either the user knowing or not having the option to change it.
The above will hopefully give you an idea of what you want to do – for the record I’ve decided to just push out Google as an option, but let users choose to change their default search engine if they choose to.
If you’ve found any different to the above or have any other information, I’d be very happy to hear it.
Brief Instructions:
You came here to be told what to do? OK, follow these steps:
1. Add your chosen search provider manually via IE10 and set as default. Different regions have slightly different settings, so don’t just get it off the net.
2. Export settings to .reg or Group Policy Preferences Wizard from HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\ – Default Scope key as well as everything in the key that matches the name.
3a. Push those settings out to other PCs. Users will get prompted next time they open IE asking if they want to change their default search engine.
OR
3b. Adjust all the key paths by adding the “Policies” part – path HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\SearchScopes\ – this will force the settings but be silent to the user.
Also to set the policy “Restrict search providers to a specific list of providers”.
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Infodelivery\Restrictions]
“UsePolicySearchProvidersOnly”=dword:00000001
4. That’s it. Don’t bother trying to get tricky as IE has several failsafes which will revert it back to Bing because it doesn’t know what’s going on anymore.