Summary
In specific circumstances a Major Upgrade which contains a chained MSI will fail and roll back.
Symptoms
If your Major Upgrade is set to "Install setup then remove the uneeded files" then it has been seen that any Chained MSI's included in the installer will be skipped causing the installation to rollback.
Whilst the actual message may vary, you should see lines within the Windows Installer log similar to the following:
Action start 10:34:26: ISChainPackagePrepare.
InstallShield 10:34:26: Skipping chained packages during major upgrade
Cause
An "official" Microsoft Chained MSI action does not exist - instead from Windows Installer 4.5 onwards Microsoft allowed the ability to include an embedded installer to an MSI. This is achieved by manually writing an executable that is called during the installer. This executable calls MsiInstallProduct functions ( http://msdn.microsoft.com/en-us/library/aa370315(VS.85).aspx ).
When a chained MSI is added to a project, a custom action "ISChainPackagePrepare" is also automatically added to the project. This custom action is added to the execute sequence as an immediate action and is responsible for launching the chained MSI functionality via the IsChainPackages.dll as referenced above.
In addition to adding the ISChainPackagePrepare action, adding a Chained MSI to your project will also populate the MsiEmbeddedChainer MSI table. This table is used to author multiple package installations: http://msdn.microsoft.com/en-us/library/bb736316(VS.85).aspx
The failure to launch an embedded installer in these specific circumstances appears to be a limitation of the Windows Installer and is not caused by Installshield.
Resolution
There are a couple of possible workaround for this scenario:
- Use the setting "Completely uninstall old setup before installing new setup".
- Rather than including the secondary MSI as a chained installer, use a Suite Project to wrap both installers into a single setup.exe. This preserves the ability to rollback the installer completely if one of the installers was to fail.
Additional Information
Related Articles
Passing Setup.exe Language Selection to Chained MSI and Prerequisite 18Number of Views
Hi, I am Reva - Ask me anything.
No new updates
Thanks for the feedback!
Your feedback has been saved.Rate this response:
Add Additional feedback ( Optional )
Are you sure you want to cancel
the case creation?
Are you sure you want to cancel the case creation?
Are you sure you want to close this case
| Products | Region | Phone Numbers |
|---|---|---|
| FlexNet Operations FlexNet Embedded FlexNet Publisher FlexNet Connect FlexNet Code Insight InstallAnywhere InstallShield |
North America * |
+1 630-332-2513 (toll) +1 877-279-2853 (toll-free in North America) |
| Europe * |
+44 1925 944367 (toll) +44 800 047 8642 (toll-free in Europe) |
|
| Japan * | +81 3-4540-5335 (select option 2) | |
| Australia * |
+61 3 9895 2177 +61 1800 560 603 (toll-free in Australia) |
|
|
Usage Intelligence (formerly
Revulytics) Compliance Intelligence |
Please use the Case Portal to submit your support ticket or reach out to your Revenera contact. | |
Revenera Assistant
Case id: 00001065
Activity: Status change: 2 hours ago