[wix-users] Patch uninstall causing Repair

Rob Mensching rob at firegiant.com
Thu Aug 4 21:42:22 PDT 2016

Well, to be fair, Windows Installer can't figure out if it has to repair the MSI either. When removing an MSP the Windows Installer executes a repair of the MSI to make everything good. And should you have any shared resources with other MSIs, the shared resources may not end up the versions you want because the Windows Installer won't repair all the related MSIs. Burn (as of v3.9) does better than the Windows Installer at this point.

I don't understand why you jump to having to create a private burn.exe. Why not work with us to add functionality to make this feature more optimal? We wished the Visual Studio team (which added this feature in v3.9) would have thought it through more but they only optimized for their scenarios. Now more work could be done to make it even more optimal, but at least less is broken with the current design.

Finally, if you don't want to help us improve the WiX Toolset itself, your BA has enough information to proceed quite optimally should it want to skip repairing most MSIs.
 Short replies here. Complete answers over there: http://www.firegiant.com/

-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of robert_yang at agilent.com
Sent: Thursday, August 4, 2016 9:11 PM
To: wix-users at lists.wixtoolset.org
Subject: Re: [wix-users] Patch uninstall causing Repair

"If patch bundle major upgrades an MSI in the base bundle, uninstalling the patch bundle will remove the upgraded MSI leaving the base bundle broken. That was fixed in v3.9 such that patch bundles repair their base bundles so the base bundles have a chance to fix removed major upgraded MSIs."

The patching we are doing is not of this kind -- it is more along the lines of a minor update, replacing some DLL's and EXE's and bumping the last component of the product version number (eg. "8.0.8128.0" to "8.0.8128.1").

There is just one package in our patch bundle, a .MSP.  The patch classification we use is typically "Hotfix" or "Service Pack".

I understand the need to solve a general problem, but it seems like there should be a way to optimize the process for a trivial case such as this.

I suppose another alternative is to build a private burn.exe with some of this logic turned off, simply for deploying patch bundles.  The question other people around here are going to ask me is "if Windows Installer can figure it out that it doesn't have to repair the MSI, why can't burn ?"

WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

More information about the wix-users mailing list