We thought this should be no problem with the Internet Explorer Administration Kit (IEAK) so we created a package with it. We added the search providers, accelerators and links the customer wanted to have and imported them with IEAK to the package we wanted to created while also activating the option that no default items should be added.
Using VMWare Workstation we then tested our package (did I mentioned which great invention Snapshots are?) and everything looked quite good except that the search box beside the address bar still showed Live Search (not as default, but anyway) like this:
After several tests we are sure this wasn't a failure inside the package, but instead some "by design" issue. Tracking this down inside the registry we found that IE8 get's the list of Search providers from
However, it also checks
and if it finds a search provider there that is not already shown, it will simply display it as well. And Live Search did come from this HKLM key.
We resolved this issue by NOT adding any search provider inside the package and executing two batch files after the installation of IE.
IESearchProvider_UserSet.bat will remove Live Search from the HKCU SearchScopes, add Google (from IESearchProvider_GoogleSearch_User.reg) and make this the default.
IESearchProvider_ComputerSet.bat will remove Live Search from the HKLM SearchScopes, add Google (from IESearchProvider_GoogleSearch_Computer.reg) and make this the default.
Both scripts work identically, except one check HKCU and the other HKLM. Both check if the Google search provider is already installed (we have created our own GUID for this) and if not it will be added, set as the default and finally deleting the Live search provider.
We have added these commands to the Internet Explorer GPO (..UserSet.bat to the user scripts, ...ComputerSet to the computer scripts). And don't worry: This script will work even if IE8 is not rolled out, IE7 can use the Google search provider as well.
You can download all files here.