Actually, that order would be right for a major upgrade. The old product gets removed first, then an install occurs. Removal occurs in the standard action RemoveExistingProducts. You'll want to schedule your "backup" actions before this action, and your "restore" after it. And you probably only want the backup/restore to occur if a major upgrade is running. There are some properties you can look at to determine this. -- John M. Cooper
-----Original Message----- From: David P. Romig, Sr. [mailto:d...@tcsc.com] Sent: Wednesday, December 21, 2011 2:56 PM To: wix-users@lists.sourceforge.net Subject: Re: [WiX-users] WiX 3.6 major upgrade backup and restore John, Thanks for the reply. I've tinkered with the "Schedule" attribute in the MajorUpgrade element but that doesn't seem to address the problem. With my application, users can create folders and configuration data under the CommonAppData folder. These files and folders are unknown to the installer. I want to preserve the original content since other custom actions may upgrade this content to accommodate a new software version. The custom actions create a zip archive of the current folder tree (Backup) and unzip the folder tree (Restore) after an upgrade. Orca lists the InstallExecuteSequence table shown below where the actions Backup=1501, Uninstall=2599, Install=5001 and Restore=6599. I was expecting the installer to invoke the custom actions in numerical sequence. But it invokes them in the order Backup, Uninstall, Restore, Install. This seems to out of order. Is there something I'm missing? Thanks, Dave Action Condition Sequence FindRelatedProducts 25 . . . (elided for brevity) InstallValidate 1400 RemoveExistingProducts 1402 InstallInitialize 1500 Backup Installed AND UPGRADINGPRODUCTCODE 1501_ ProcessComponents 1600 UnpublishFeatures 1800 Uninstall Installed OR UPGRADINGPRODUCTCODE 2599_ RemoveRegistryValues 2600 . . . (elided for brevity) WriteRegistryValues 5000 Install NOT Installed 5001 RegisterUser 6000 . . . (elided for brevity) Restore UPGRADINGPRODUCTCODE 6599_ InstallFinalize 6600 >-----Original Message----- >Date: Mon, 19 Dec 2011 15:06:28 -0600 >From: John Cooper <jocoo...@jackhenry.com> >Subject: Re: [WiX-users] WiX 3.6 major upgrade backup and restore >To: General discussion for Windows Installer XML toolset. > <wix-users@lists.sourceforge.net> >Message-ID: > <8a70cbb180e61c4b9567002c44bcc28f031a387...@mmoexchmbs02.jhacorp.com> >Content-Type: text/plain; charset="us-ascii" > >That's really a function of when you schedule RemoveExistingProducts (which is handled by the Schedule attribute in the MajorUpgrade element). Read the descriptions for "Schedule" and see which one fits the model of deployment you want. If you want the old install to remain if the upgrade fails, you probably want "afterInstallInitialize" which will roll back into the pre-existing install on upgrade failure. The backing up and restoring is handled for you. You just need to select the appropriate scheduling for what you want. >-- >John M. Cooper > >-----Original Message----- >From: David P. Romig, Sr. [mailto:d...@tcsc.com] >Sent: Monday, December 19, 2011 2:57 PM >To: wix-users@lists.sourceforge.net >Subject: [WiX-users] WiX 3.6 major upgrade backup and restore > >I have written custom actions that backup and restore user-managed files and folders associated with my application's operation. The Setup.wxs file uses the MajorUpgrade tag. >What InstallExecuteSequence entries would invoke the Backup custom action before an upgrade and the Restore action after an upgrade? >Dave > ------------------------------------------------------------------------------ Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users NOTICE: This electronic mail message and any files transmitted with it are intended exclusively for the individual or entity to which it is addressed. The message, together with any attachment, may contain confidential and/or privileged information. Any unauthorized review, use, printing, saving, copying, disclosure or distribution is strictly prohibited. If you have received this message in error, please immediately advise the sender by reply email and delete all copies. ------------------------------------------------------------------------------ Write once. Port to many. Get the SDK and tools to simplify cross-platform app development. Create new or port existing apps to sell to consumers worldwide. Explore the Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join http://p.sf.net/sfu/intel-appdev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users