Posts

Showing posts from September, 2014

Demystifying COM Interop Assemblies

Image
Sometimes, you'll come across COM registration keys that look like this: But what are they exactly?   If you look at the registry keys created, you'll notice how it doesn't look like a normal COM DLL being registered (although its similar).  Normally, you'd have the InprocServer pointing to the DLL that's being registered, but in this case there's additional registry values being written that you wouldn't normally see that relate to the registration of a COM DLL.   That's why you won't see these entries being placed into the Windows Installer advertising tables (ProgId, Class, etc), and that these entries appear in the Registry table.   Using regasm.exe to register the assembly as a COM DLL with the /codebase switch and exported the results into a .REG file to get the following: REGEDIT4 [HKEY_CLASSES_ROOT\IPSMapControl.UserControl] @="IPSMapAx.IPSMapControl" [HKEY_CLASSES_ROOT\IPSMapControl.UserContr