Sequencing is the order in which the actions are queued to run. Conditions is the decision to run or not run any arbitrary action.
You need to look at conditional syntax and set the condition of your action. However, there is an issue with what you describe you need: In the sequence between CostInitialize and InstallInitialize, the list of features and components who's states will be changed is generated. Then each action related to every affected component is run in sequence. Thus, if you are uninstalling, and you select both OptionalComponent and MainComponent to be removed, then the following will happen (ignoring less-used actions) in this order: All services associated with either component are stopped and deleted COM+ & COM registration information, shortcuts, and registry entries associated with either component are removed Files and folders associated with either component are removed So, there is no point at which one component has been removed while the other is still present. The only way to achieve that is to have each component in separate features and remove them one feature at a time. You simply can't get that if someone tells MSI to remove the entire product. The fact that you are running an EXE that is part of one component during your installation/removal is called "Self-Registration", which is also called a "bad practice". Deployment and Operation need to be separate code without code dependencies between them, because during deployment transactions you can't depend on your code being in a useful state. -----Original Message----- From: Armin Linder [mailto:mirram...@googlemail.com] Sent: Tuesday, October 13, 2009 5:11 AM To: General discussion for Windows Installer XML toolset. Subject: [WiX-users] Sequencing custom actions Hi WiX users, I am seeking advice how I can accomplish the following: I found out how to sequence custom actions "after InstallFinalize". For my installation requirements I need a finer degree of control when custom actions are run, particularily I am seeking for a way to execute a custom action "after successful installation of component/feature xyz" and "after deinstallation of component/feature xyz" (regardless wether successful or not). Can this be done? The whole story: I have a msi that contains 2 components/features, lets name them MainComponent and OptionalComponent. MainComponent includes an .exe which needs to run if OptionalComponent is installed. Likewise, if OptionalComponent is deinstalled, the .exe needs to run again. If both MainComponent and OptionalComponent are selected for uninstall, OptionalComponent needs to be uninstalled, then the .exe must run, and then MainComponent needs to be uninstalled. Doesn't look to difficult, but reading the docs about sequencing actions I found nothing hepful. Can anyone help me? (A pointer to a piece of documentation will do nicely ...) Thanks, Armin. ---------------------------------------------------------------------------- -- Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Come build with us! The BlackBerry(R) Developer Conference in SF, CA is the only developer event you need to attend this year. Jumpstart your developing skills, take BlackBerry mobile applications to market and stay ahead of the curve. Join us from November 9 - 12, 2009. Register now! http://p.sf.net/sfu/devconference _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users