Как реализовать обновление установщика WiX? - PullRequest
227 голосов
/ 22 сентября 2008

На работе мы используем WiX для сборки инсталляционных пакетов. Мы хотим, чтобы установка продукта X привела к удалению предыдущей версии этого продукта на этом компьютере.

Я читал в нескольких местах в Интернете о серьезном обновлении, но не смог заставить его работать. Кто-нибудь может указать, какие именно шаги мне нужно предпринять, чтобы добавить функцию удаления предыдущей версии в WiX?

Ответы [ 12 ]

2 голосов
/ 05 декабря 2015

Ниже работало для меня.

<Product Id="*" Name="XXXInstaller" Language="1033" Version="1.0.0.0" 
    Manufacturer="XXXX" UpgradeCode="YOUR_GUID_HERE">
<Package InstallerVersion="xxx" Compressed="yes"/>
<Upgrade Id="YOUR_GUID_HERE">
    <UpgradeVersion Property="REMOVINGTHEOLDVERSION" Minimum="1.0.0.0" 
        RemoveFeatures="ALL" />
</Upgrade>
<InstallExecuteSequence>
    <RemoveExistingProducts After="InstallInitialize" />
</InstallExecuteSequence>

Пожалуйста, убедитесь, что код UpgradeCode в Product соответствует Id в Upgrade.

1 голос
/ 24 марта 2014

Это то, что сработало для меня, даже со специализацией ВНИЗ оценка:

<Wix ...>
  <Product ...>
    <Property Id="REINSTALLMODE" Value="amus" />
    <MajorUpgrade AllowDowngrades="yes" />
...