I may be missing the point but you can remove any other MSI with this:

<!-- Remove old install -->
<Upgrade Id="OLD-INSTALL-UPGRADECODE">
  <UpgradeVersion Minimum="0.0.0" Maximum="127.254.32767"
IncludeMinimum="yes" IncludeMaximum="no" Property="REMOVEOLDINSTALL" />
</Upgrade>

(The odd values in UpgradeVersion/@Maximum are due to a bug in one of
the ICE validations.)

You can add as many of these as you like to remove old installs. Hope
this helps.

Neil

-----Original Message-----
From: Dave Mateer [mailto:dave_mat...@ntm.org] 
Sent: 28 January 2010 13:49
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Removing previous version of application that was
installed from other installer software

We are moving our installer generation to WiX. Unfortunately, we delayed
on this too long and we now find ourselves needing to switch *NOW*
because we have pretty much hit a brick wall with our current installer
software and there is no fix coming from the company. So, expect several
questions in the days ahead. I've used WiX on small projects many times,
but this is definitely going to be orders of magnitude more complicated.
I appreciate the expertise of the community!

My first question is: what do I need to do to remove the previous
version of the application (generated from the other installer) using my
WiX installer?

I used Orca to look at the MSI database of the previous installer. The
UpgradeCode in the Property table has a Guid, let's call that
{0123-UPGRADEGUID-CDEF}. ProductVersion is 3.70.

I started by wxs with:

<Product Id="*" Name='!(loc.ProductName)' Language="1033"
Version='$(var.ProductVersion)' Manufacturer='!(loc.CompanyName)'
UpgradeCode='$(var.UpgradeCode)'>

    <Package Id='*' Description='!(loc.PackageDescription)'
Manufacturer='!(loc.CompanyName)' InstallerVersion='200'
Languages='1033' Compressed='yes' />

    <Upgrade Id="$(var.UpgradeCode)">
      <UpgradeVersion Minimum="$(var.ProductVersion)" OnlyDetect="yes"
Property="NEWERVERSIONDETECTED" />
      <UpgradeVersion Minimum="1.0.0" IncludeMinimum="yes"
Maximum="$(var.ProductVersion)" IncludeMaximum="no"
Property="OLDERVERSIONBEINGUPGRADED" />
    </Upgrade>

    <InstallExecuteSequence>
      <RemoveExistingProducts After="InstallValidate" />
    </InstallExecuteSequence>

    <Condition Message="!(loc.NewerVersionDetected)">
      NOT NEWERVERSIONDETECTED
    </Condition>

    ...

UpgradeCode is set to the same UpgradeCode as found in the Orca database
({0123-UPGRADEGUID-CDEF}); ProductVersion is 3.71.

Everything compiles and runs, but nothing is being removed. It is adding
another application with the same name in Add/Remove Programs. What else
do I need to do?

Dave

------------------------------------------------------------------------
------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the
business
Choose flexible plans and management services without long-term
contracts
Personal 24x7 support from experience hosting pros just a phone call
away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to