RemoveExistingProductAfter values

Oct 22, 2015 at 1:47 PM
Edited Oct 22, 2015 at 3:37 PM
Hi,

Setting RemoveExistingProductAfter property of MajorUpgradeStrategy to Step.InstallExecute or Step.InstallExecuteAgain or Step.InstallFinalize leads to removing the application when actually I am trying to upgrade the application.

I assume that is because the same components have different Guids in different versions of installers.
Is there any chance the installer to remove the old installation after installing the new installation at a major upgrade without removing the new installation?
I assume the answer is No, and if I want to have the old installation rolled back in case of a new installation failure, the only possible value I can choose for RemoveExistingProductAfter property is Step.InstallInitialize.

But I am not happy with uninstalling and installing a web application in IIS at upgrade. It is possible the customer to make some manual configuration changes in IIS, like changing the SSL settings. An upgrade which uninstalls and installs back the web application will lose the customer settings.

Thank you.
Coordinator
Oct 25, 2015 at 5:11 AM
> Is there any chance the installer to remove the old installation after installing the new installation at a major upgrade without removing the new installation
I see your point but I am not sure MSI/WiX supports that.

You may want to have a look at Project.MajorUpgrade (instead of MajorUpgradeStrategy). It is a later addition to the WiX elements and it was introduced to simplify and reflect more modern upgrade scenarios. Possibly it will have something useful for your case. You will find the corresponding sample in Wix#/Samples/MajorUpgrade/MajorUpgrade/sample.cs.