How can I uninstall a MSI but not the Bundle itsel

2019-03-04 14:31发布

问题:

My Requirements:

I have few MSI files which need to be installed. User can select which one he wants to install/uninstall. For this purpose I have used WiX bootstrapper where I have used WPF UI to list down all the MSI and few buttons to Intstall/Upgrade/Uninstall

Till now I am able to install selected MSI using InstallCondition but could not manage the uninstall. If I uninstall any of the MSI, the Bundle is also getting uninstalled. Hence it is not showing in the Add/Remove Program.

So I would like to know if there is any way to allow uninstall of individual MSI but not the Bundle itself?

回答1:

I'm guessing your bundle is getting uninstalled because you are using Engine.Plan(LaunchAction.Uninstall). If you use a different action like Install or Modify, it shouldn't be removed.

To control the install state of the individual MSI packages, I think you can set that in a callback to PlanPackageBegin.