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

Reply via email to