WIX Burn Uninstallation?

2019-01-25 16:05发布

问题:

I have a WIX_bundle (V1.0.0.0) which installs 4 third party MSI's of the version (5.0.0.0). Now the new version of my third party MSI's got updated (6.0.0.0). I created a new version of the WIX_Bundle with (v2.0.0.0) and both the WIX bundles have the same upgrade code. What I want to happen is that the new version of the WIX_Bundle should uninstall the previous version (v1.0.0.0 along with the 4 MSI's) and install the new version (v2.0.0.0 with new 4 MSI's).

But when I try to install the WIX_BUndle V2.0.0.0, it tries to install the new version and is not doing an uninstall of the previous version. Am I missing something here?

I added the RelatedBundle Action="Upgrade" Id="$(var.UpgradeCode)" too. But nothing is doing the trick?

Is my expectation correct that the uninstallation should happen before the new version installs? I want the uninstallation of the 4 previous MSI's to happen regardless if they have an upgrade or not and then install the new version in the new WIX_Bundle (v2.0.0.0). Can I force this to happen?

回答1:

I was wrong. The WIX bundle handles upgrades BOTH at the bundle level and also at the internal MSI level. So everything is good. when I go from v1.0.0.0 to v2.0.0.0, it will uninstall the 5.0.0.0 of all the 4 MSI's and install the 6.0.0.0 version correctly (provided your MSI's are supposed to upgrade).