1) There's a program called "Vista Manager" (Yamicsoft).
The currecnt version is 3.0.6.
Its has a section called "Repair Center".
In "Repair Center" there's a subsection called "Icon Repair".
There you can:
- restore the icon file thumbnails;
- increase the size of the icon cache when the cache is full;
- rebuild the icon cache if Windows displays corrupted, invalid or missing icons.
2) Without that program, you can rebuild yourself the icon cache in Vista as described here quite well.
3) How to increase the icon cache size in Vista?
You'll make the changes in the system registry. Start the Registry Editor by selecting Run from the Start menu, typing regedit in the Open text box, and clicking OK. When the Registry Editor opens, navigate through the left pane until you get to the HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Explorer. In the right pane, look for the value named Max Cached Icons.
If the value exists, it's probably set to 500, which is the default value for the key. To change the value, double-click it. You'll then see the Edit String screen. Enter a decimal value of 4096 or a hexadecimal value of 1000 in the Value Data field and click OK.
If the value doesn't exist, you'll need to add it. Select New | DWORD Value from the Edit menu. The new value will appear in the right pane, prompting you for a value name. Type Max Cached Icons and press . Make sure you separate each word with a space. The proper value is Max Cached Icons, not MaxCachedIcons.
Double-click the new value. You'll then see the Edit DWORD screen. Enter a decimal value of 4096 or a hexadecimal value of 1000 in the Value Data field and click OK.