In the UpgradeVersion element, OnlyDetect does exactly what it suggests: it
only detects all matching products (setting the indicated property with the
list of found ProductCodes), suppressing passing those ProductCodes to
RemoveExistingProducts. Set OnlyDetect to "no" for those properties that
contain the packages you intend to remove. Or remove it entirely for those
same properties, since it defaults to "no".

Leave OnlyDetect set to "yes" for those properties that you won't be
removing (such as newer versions you use to block installation, etc.)

-----Original Message-----
From: Jeremy Rimer [mailto:jeremyri...@gmail.com] 
Sent: Tuesday, July 13, 2010 12:36 PM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] WIX Upgrade configuration

I've solved my App.Config issues with help from Blair (Thanks, buddy!!!),
but now I'm running into upgrade path problems...

To set the stage, I have a WIX installer that successfully deploys an
application to it's installation directory, and takes some input from the
user that calls a CA to overwrite some elements of the App.Config file that
were deployed, or were present before deployment (NeverOverwrite="yes" on
the App.Config file)...

On clean install, the files deploy perfectly, and the app.config overwrite
works great. Running the installer AGAIN, I get the Repair/Remove dialogs,
which indicates the installer is self-aware.

My problem is when I rebuild a new installer with a new product version, and
a new Product GUID Id. . .

It runs through the new installation path, and completes, but I end up with
a duplicate program installed. It shows up in Add/Remove programs twice,
instead of "RemovingExistingProducts" silently before the upgrade
installation first :(.

My upgrade definition is as follows:
=============================
<Upgrade Id='0b872586-4c12-4848-b1dd-680009759b5f'>
      <UpgradeVersion
        OnlyDetect='yes'
        Property='PREVIOUSVERSIONSINSTALLED'
              Minimum='0.0.0.0'
        IncludeMinimum='yes'
              Maximum='$(var.ProductVersion)'
        IncludeMaximum='no' />
      <UpgradeVersion
        OnlyDetect='yes'
        Property='SELFFOUND'
              Minimum='$(var.ProductVersion)'
        IncludeMinimum='yes'
        Maximum='$(var.ProductVersion)'
        IncludeMaximum='yes' />
      <UpgradeVersion
        OnlyDetect='yes'
        Property='NEWERFOUND'
              Minimum='$(var.ProductVersion)'
        IncludeMinimum='no' />
    </Upgrade>
==============================

In the InstallExecuteSequence, I've put the following:
==============================
<RemoveExistingProducts
After="InstallInitialize">PREVIOUSVERSIONSINSTALLED</RemoveExistingProducts>
==============================

...And before I attempt the upgrade, I rebuild the installer with a new ID
GUID for the Product definition, and a new $(var.ProductVersion) that is
greater than the original installations'...

Running it then, the installer seems to execute what seems like the "fresh
install" path, and results in a dupilcate entry in the Add/Remove Programs
dialog in windows if the installation is then completed. :\

Anything I'm missing that you can tell?

Thanks as always!
----------------------------------------------------------------------------
--
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to