You have two choices for "late" scheduling, depending on desired behavior.
For the one you describe, you use this:
1.
If you don't have any "<InstallExecute ...>" in your InstallExecuteSequence:
<InstallExecute Before="RemoveExistingProducts" />
<RemoveExistingProducts Before="InstallFinalize" />

2.
If you do already have any "<InstallExecute ...>" in your
InstallExecuteSequence (but no "<InstallExecuteAgain ...>"):
<InstallExecuteAgain Before="RemoveExistingProducts" />
<RemoveExistingProducts Before="InstallFinalize" />

3. If you already have both "<InstallExecute ...>" and "<InstallExecuteAgain
...>" in your InstallExecuteSequence then you will have to go with one of
the other options. There is only one other "late" option, which is "After
the InstallFinalize action." Which runs the risk of leaving both versions
"installed" (but the newer one has already "overwritten" the older one at
that point).

You have to make sure you follow all the component rules WRT component guid
stability, component composition, which item is the keypath of each
component, etc. Some recommendations to help make it easier to keep those
rules: Install under a "well known folder", 
ALWAYS use "*" for both your component's guids (wherever the tool allows it)
AND for your Product's Id value. Don't ever change your UpgradeCode for all
the versions of this product. And ALWAYS use Feature and/or Component state,
not installation state properties, to schedule custom actions that change
machine state.

-----Original Message-----
From: gapearce [mailto:mr_gapea...@yahoo.com] 
Sent: Monday, October 04, 2010 4:05 PM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] prevent component removal on major upgrade


Sorry - just found this link to explain RemoveExistingProducts:

http://msdn.microsoft.com/library/aa371197.aspx

I am thinking of trying this, but this says that the RemoveExistingProducts
needs to be scheduled 'between'
the InstallExecute action, or the InstallExecuteAgain action, and the
InstallFinalize action.  How can I specify this sequence?  

I have this in there now, but it seems incomplete according to the doc:

<RemoveExistingProducts After="InstallExecute" />

How am I supposed to do this?
-- 
View this message in context:
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/prevent-compon
ent-removal-on-major-upgrade-tp5600477p5601219.html
Sent from the wix-users mailing list archive at Nabble.com.

----------------------------------------------------------------------------
--
Virtualization is moving to the mainstream and overtaking non-virtualized
environment for deploying applications. Does it make network security 
easier or more difficult to achieve? Read this whitepaper to separate the 
two and get a better understanding.
http://p.sf.net/sfu/hp-phase2-d2d
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Beautiful is writing same markup. Internet Explorer 9 supports
standards for HTML5, CSS3, SVG 1.1,  ECMAScript5, and DOM L2 & L3.
Spend less time writing and  rewriting code and more time creating great
experiences on the web. Be a part of the beta today.
http://p.sf.net/sfu/beautyoftheweb
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to