Two issues: 1st issue (related to both your problem AND the conditions you supplied): INSTALLED is NOT the same as Installed. Installed is defined by Windows Installer, INSTALLED is a different property (that is public) that you can use for whatever you want, but you will need to supply your own definition/value as needed to employ it.
Also, even after correcting your use if the property Installed, the final condition you listed also isn't correct. You wrote: Modify or upgrade: (Installed AND UPGRADINGPRODUCTCODE) That condition is identical to simply UPGRADINGPRODUCTCODE and means "uninstall-phase of major upgrade only". Modify or upgrade would depend on the phase of major upgrade you are referring to: Modify (and non-major upgrade) phase: REINSTALL Install-phase of major upgrade: NOT Installed AND NOT <<insert-your-upgrade-table-defined-property-here>> Uninstall-phase of upgrade: UPGRADINGPRODUCTCODE So, if you want your action to run in both the installing and uninstalling phases of your major upgrade AND in whenever you modify and/or perform a non-major upgrade, but not during clean install, you want: REINSTALL OR UPGRADINGPRODUCTCODE OR (NOT Installed AND NOT <<insert-your-upgrade-table-defined-property-here>>) -----Original Message----- From: daniel.knoep...@noser.com [mailto:daniel.knoep...@noser.com] Sent: Tuesday, July 20, 2010 9:16 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Custam Action Install conditions (why is CA executed upon uninstall when condition is set to NOT INSTALLED ) Hi I have some problems when it comes to install conditions. There are some custom actions that should only run upon the first installation and not upon uninstall, upgrade, repair, modify..etc. The conditions i tried to use was the following: <Custom Action="CopyChangingFilesAction.SetProperty" After="CheckFeaturesAction">NOT INSTALLED</Custom> However, upon uninstall the action runs. How is this possible? This should be so easy. What could be the reason for it? Below i have listed some conditions and when they should return true. Please correct me if anything is wrong: Only on install: NOT INSTALLED Only on uninstall: (NOT UPGRADINGPRODUCTCODE) AND (REMOVE ~= "ALL") Always except uninstall: NOT ((NOT UPGRADINGPRODUCTCODE) AND (REMOVE ~= "ALL")) Modify or upgrade: (INSTALLED AND UPGRADINGPRODUCTCODE) ---------------------------------------------------------------------------- -- This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users