If you are working with COM and using OleView.exe on Windows Vista to view type libraries, you may notice that the tool hangs forever when trying to open a type library from a file or resource in a DLL.  I've encountered this problem myself on every Vista box I've tried it on, and have seen people complaining about it elsewhere.

Just a few days ago, I finally searched for this issue online and came up with a Microsoft KB on the topic.  This was truly a DUHH moment since I have neglected to search for it up to this point and could have had this fixed a long time ago instead of working without OleView.

Basically, the problem has to do with the registration of OleVIew's utility COM object in iviewers.dll.  It should be located side by side with OleView.exe (typically installed by Visual Studio to its tools directory, or if you are like me, in your private tools directory).  Re-register Iviewers.dll to fix it:

> regsvr32 Iviewers.dll

Once this is done, OleView should be back to normal so you can view your precious type libraries.

Also, this issue may happen on other OS if you are copying OleView / iviewers.dll around and the CLSID registration for iviewers.dll becomes incorrect.

This is also described in the KB here: http://support.microsoft.com/kb/176938.