[wix-users] Conditional uninstall of related product.

Bob Arnson bob at firegiant.com
Tue Dec 12 10:26:04 PST 2017

Sound but you could simplify it: Keep all entries in Upgrade table and have the immediate CA remove product codes to leave behind from the ActionProperty property. RemoveExistingProducts uses the ActionProperty property to know which products to remove.

-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Hoover, Jacob via wix-users
Sent: Tuesday, 12 December, 2017 12:32
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Cc: Hoover, Jacob <Jacob.Hoover at greenheck.com>
Subject: [wix-users] Conditional uninstall of related product.

Just throwing an idea out here wanting to see if there are any pitfalls I am missing.

I have a new requirement to allow for conditionally leaving older versions of my application around (think of it as being similar to Office versions).  I have changed the needed Product and Upgrade codes, but as the Upgrade table and Windows Installer doesn't allow for conditional upgrades I have instead written a semi-custom CA for dynamically populating the upgrade table based on a BA install option that I then pass to the MSI as a property. I schedule my CA to run always, in both sequences immediately before FindRelatedProducts.  My CA appends temporary rows to the Upgrade table (based off of a static property which is a list of prior version upgrade codes), and then appends the dynamically named action properties to the SecureCustomProperties property.

This seems to work in my limited testing, but I would appreciate any feedback on the concept.


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

More information about the wix-users mailing list