Missing Search Provider Icons in Internet Explorer

I saw this problem recently:  I, like most IE 8 users, use multiple search providers in IE, all of them with their icons that appear when selected.

The search provider icons for several providers, including Bing, my default, were missing and showed only the generic magnifying glass icon.  Restarting IE didn’t help nor did rebooting.

I found a simple workaround to fix this but I first want to explain search provider internals in some detail.

In Internet Explorer, a search provider is an XML document with a a specially-coded URL based on the OpenSearch specification.  IE comes with Bing as its default search provider; users can add more providers.  In the screenshot, you can see I have Bing, which is defaulted, Google, Wikipedia and WolframAlpha as my providers.

Providers are stored in the user’s registry under HKU:\<user SID>\Software\Microsoft\Internet Explorer.

Each Search Provider is listed under a GUID;  DefaultScope is a string value with the default provider listed.  It points to Bing’s entry in this case:

Most of the values are self-explanatory.  Of particular interest in my problem is the FaviconPath and FaviconURL string values.  Let’s say the Bing icon is missing.  Its path is C:\Users\davidmoisan\AppData\LocalLow\Microsoft\Internet Explorer\Services\search_{533B8DE4-C0F4-4C0F-ABA8-79A79086865C}.ico.

Here are all my search icons.  They are in c:\users\<userprofile>\AppData\LocalLow\Microsoft\Internet Explorer\Services\:

Note the filenames are of the form search_{GUID}.ico.  With that in mind, I fixed my problem the hard way:  I found an Bing icon elsewhere on my system, copied it to this directory, renamed it to match the filename in FaviconPath and restarted IE.

It worked!

(This explains why there are multiple instances of a few icons in the screenshot above.  You will normally have just one icon per each provider, but the extra icons aren’t hurting anything.)

However, a much easier solution that I recommend for regular users: 

  1. If you have more than one provider, and the provider with the missing icon is not your default provider, click on the search bar drop down and select Manage Your Providers.  Right-click on that provider and select Delete.  Close the window and try to re-add that provider.  Its icon should reappear and you are done.
  2. If you only have one provider, or if the provider with the missing icon is your default provider, click on the search bar drop-down button and select Find More Providers.  Add a search provider from the screen that comes up (any provider will do.)
  3. Click the search bar drop-down and select Manage Search Providers.
  4. Right-click on your new provider and select Set As Default.
  5. Select your old provider, right-click it and select Delete.
  6. Close that window and click on the search bar to select Find More Providers. 
  7. Find and re-add your old provider.  Its icon should re-appear.
  8. If desired, go back into Manage Search Providers and re-select your old provider as the default.

This problem may also be caused by a recent security update, KB974455, and its later update KB976749, which was released to Microsoft Update last week.  I first noticed this problem after applying the latter update, but I can’t confirm that either update caused this.  If you do install the updates, install 974455 first before installing 976749;  installing 976749 without the former update may cause IE to stop working.

In my case both updates were already on the machine in the correct order.  I might never know how the icons disappeared but now we know how to make them reappear.  Happy searching!


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s