Problem: When I run my application, a strange installer pops up and starts trying to install something
The solution: Search all of your .threg files and delete any line that starts with: value InprocServer32 07 (followed by a long string of numbers and letters)
This strange installer is Microsoft Installer which gets invoked if you link DLL or OCX virtual registry scripts which have MSI Advertising recorded in the script. After the microsoft installer dialog appears, you can locate the offending OCX or DLL by looking at your windows event log viewer.
Windows Installer adds an extra subkey called Inprocserver32 under a COM componets CLSID root. This information tells MSI how to repair a COM component if it is damaged. Because component and registration information provided by Thinstall may change based on the EXE path, you need to delete this information so that MSI is not invoked.
Example:
HKEY_CLASSES_ROOT\CLSID\{0713E8A2-850A-101B-AFC0-4210102A8DA7}
{
InProcServer32
{
value 02 "DLLNAME.dll" InProcServer32 07 "39774742989g82864992648" (delete this line!)
}
}