Hi, I was searching the net because I had the same problem, and came across this thread. Anyway, I found a solution, at least it worked for me. Probably not the most elegant solution, but it works. Anyway, this little snipet got me on the right track:
i had the same problem with second latest kmplayer version (2.9.4.1433)
i fixed it with going into registry to:
HKEY_CLASSES_ROOT\KMPlayer.mp4\DefaultIcon
and change the broken default icon location from %1 to:
"C:\Program Files\mm\The KMPlayer\KIconLib.dll",43
(change it to your own loaction)
I went there, but the icon was already correct, so I had a little poke around. I had the problem with HTML so I ended up at HKEY_CLASSES_ROOT\FirefoxHTML\shellex\iconhandler. I thought hey that sounds like it deals with icons, did a search and found
this. Long story short, and in case that link dies: iconhandler has some fancy way of giving the same filetype different icons based on blah blah*, but I wanted all htm, html, etc to have the same icon anyway. So I deleted the HKEY_CLASSES_ROOT\FirefoxHTML\shellex\iconhandler 'folder', and hey presto the icons were correct. I still have a couple of icons on my desktop not showing correctly, but they show up fine in folders and I suspect the desktop will be fine after a reboot.
And just for fun: I came across this little program in my travels,
NirSoft File Types Manager. Windows 7 no longer has a way for users to set icons for extensions, this allows you to change a bunch of options for filetypes including the icon. And it doesn't need to be installed either, I ran it from the zip. Didn't help with the iconhandler problem, but could still be of some interest to someone.
*(defaulticon location is supposed to be set to '%1' if iconhandler is used, fyi)
Anyway, just thought this could help someone in the future doing a search for the same problem.