[wix-users] MsiPackage and ExePackage

robert_yang at agilent.com robert_yang at agilent.com
Tue Mar 28 06:57:27 PDT 2017

"I am trying to write a Bootstrapper project. In my Chain I have a number of MSI's and EXE's to install. Can someone tell me the difference between the InstallCondition and the DetectionCondition.

On the chained packages I only want to install them if they aren't already installed and I never wasn't to uninstall, but I do want them to all appear in ARP, so I'm setting Permanent to YES. Should I then use InstallCondition or DetectionCondition?"

MSI's have metadata, so generally they don't need InstallCondition or DetectCondition.  These attributes are mostly for Exe's, which do not have metadata.

We use DetectCondition for exe packages.  InstallCondition is probably useful in some situations, but so far not for us.

Regarding the ARP, take a look at MsiPackage / Visible.  For the main application MSI we leave this as the default (hidden); the bundle will create an ARP entry of its own, which we want to be able to uninstall.  For MSI prerequisites which may be used by other applications, we set Visible to true and also set Permanent=true.


More information about the wix-users mailing list