I assume you mean a minor upgrade MSI, since for a patch this shouldn't be a
problem unless you're using a minor upgrade MSP with bad validation bits
targeting newer ProductVersions).

A minor upgrade MSI won't apply by default. It has to be reinstalled -
explicitly setting the REINSTALL property (or using msiexec /f, which is
equivalent); optionally, REINSTALLMODE will contain "v" to cache the minor
upgrade (otherwise the ProductVersion will not change and a subsequence
repair will regress files).

So whatever bootstrap application you're using to conditionally install the
minor upgrade MSI - can't that check the product version of what's already
installed? Seems you're doing something along these lines anyway to detect
if the product is installed. If using MsiGetProductInfo(Ex)() for example,
get the INSTALLPROPERTY_VERSIONSTRING property. You can then compare that
with the ProductVersion you're trying to install and determine if they're
newer.

On Thu, Apr 2, 2009 at 5:46 PM, Rajesh P <rajeshp.bl...@gmail.com> wrote:

> Hi
>
> Is there a way iw WiX to prevent downgrade with minor upgrades.
> Can we write a custom action to verify and compare installed product
> version. If yes, can someone suggest some Msi api's that can use in my VC++
> custom action dll.
> Is there any other easier way to achieve this.
>
> Thanks,
> Rajesh
>
> ------------------------------------------------------------------------------
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>



-- 
Heath Stewart
Deployment Technologies Team, Microsoft
http://blogs.msdn.com/heaths
------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to