This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: COM Extraction is incomplete on new build machine
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
‎Feb 07, 2013
10:38 AM
COM Extraction is incomplete on new build machine
We have just moved our build machine from 32-bit Windows Vista Ultimate to a virtual Windows 7 64-bit machine. Installshield 2010 is installed on both machines.
We have Basic MSI projects for building several of our software packages (which contain COM DLLs). Creating the setup.exe in Installshield 2010 proceeds without errors or warnings on both systems, and installing the software also apparrently succeeds without error. However, the installation from the setup.exe package built on the new (virtual Windows 7 64-bit) machine does not work. Tracing the problem shows that, although all the component files (DLLs mainly) are installed, some of the COM registration data is missing.
Note that the setup.exe packages were built from exactly the same .ism file.
Extracting the .msi and comparing the contents (using Orca) shows that the registry data is missing from the setup.exe. The components were all set to 'COM Extract at Build', and much of the registry data is correctly extracted (and added to the registry on the target machine), but significant parts are missing. (Also, I notice that some of the interface names have an underscore (_LText) in the version that works, but not (LText) in the version that doesn't.)
So: why is some of the registry data not extracted?
I've compared Installshield settings, registry settings and installed files. The only thing I've seen that looks different that might be significant is that the old build machine has Visual Studio 2008, whereas the new one has VS2010.
Thanks for your help,
Richard.
We have Basic MSI projects for building several of our software packages (which contain COM DLLs). Creating the setup.exe in Installshield 2010 proceeds without errors or warnings on both systems, and installing the software also apparrently succeeds without error. However, the installation from the setup.exe package built on the new (virtual Windows 7 64-bit) machine does not work. Tracing the problem shows that, although all the component files (DLLs mainly) are installed, some of the COM registration data is missing.
Note that the setup.exe packages were built from exactly the same .ism file.
Extracting the .msi and comparing the contents (using Orca) shows that the registry data is missing from the setup.exe. The components were all set to 'COM Extract at Build', and much of the registry data is correctly extracted (and added to the registry on the target machine), but significant parts are missing. (Also, I notice that some of the interface names have an underscore (_LText) in the version that works, but not (LText) in the version that doesn't.)
So: why is some of the registry data not extracted?
I've compared Installshield settings, registry settings and installed files. The only thing I've seen that looks different that might be significant is that the old build machine has Visual Studio 2008, whereas the new one has VS2010.
Thanks for your help,
Richard.
- Tags:
- com extract
(2) Replies
‎Feb 07, 2013
02:58 PM
Do you have to do your extract at build time? It's a build fragility risk in my mind and avoid it when possible.
‎Feb 20, 2013
04:45 PM