Schedule RemoveExistingProducts very very early? _______________________________________________________________ FireGiant | Dedicated support for the WiX toolset | http://www.firegiant.com/
-----Original Message----- From: Jesper Alf Dam [mailto:j...@medical-insight.com] Sent: Monday, May 26, 2014 3:37 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Best approach to override file versioning We have a product that ships with a number of independently versioned third-party libraries, in addition to our own files (whose file versions follow the product version) Now, we've encountered a situation where some of the third party files we want to ship in our installer have a lower version than the ones used in our previous release. This means that when a user tries to run the installer to upgrade the product, the following happens: 1. during the "costing" step, MSI figures that it already has a newer version of the file than the one we're trying to install (and therefore, there is no need to install the file from our installer) 2. MSI then uninstalls the old product version, removing the *newer* version of the file 3. MSI then installs the files from the new product version, except for the ones that got filtered out in step 1 The end result is that we get the new version of our product installed, but without the files whose versions were bumped "down". The existing version of those files has been uninstalled, and the version from the installer has been skipped, leaving us with neither. And this leaves us with a product that doesn't actually *work*. This process strikes me as pretty obviously broken, but that is a matter for the Windows Installer. Here and now, it is only a couple of files that have this problem, and we could handle those as a special case, but we would like to find a general solution that ensures that "whatever we have in the installer gets installed". We ship a set of files that have been tested together, and which form a complete, coherent product, and if, at some point in the future, we again choose/need to ship a few files whose versions have decreased since the last release, then we don't want to have to special-case that to make sure the right files get installed. We would like to ensure that if newproductversion > oldproductversion, then *all* files from newproductversion get installed. Note that all our files are installed locally for our product only. We don't install any shared DLLs, where versioning would obviously be more complicated. In our case, we really just want WiX and MSI to base their decisions on the product version, not the file versions, for all our files, now and in the future. What would be the best way to achieve this? We could use REINSTALLMODE=amus, but that seems like the sledgehammer approach. It is my understanding that this property is intended for administrative installs to specify, rather than something that should be burnt into the installer itself. Is there a better approach? Thanks, Jesper ------------------------------------------------------------------------------ The best possible search technologies are now affordable for all companies. Download your FREE open source Enterprise Search Engine today! Our experts will assist you in its installation for $59/mo, no commitment. Test it for FREE on our Cloud platform anytime! http://pubads.g.doubleclick.net/gampad/clk?id=145328191&iu=/4140/ostg.clktrk _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ Time is money. Stop wasting it! Get your web API in 5 minutes. www.restlet.com/download http://p.sf.net/sfu/restlet _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users