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

Reply via email to