Обновите старую версию msi из пользовательского пакета BA Wix

Мы обновляем наш установщик WIX msi (не пакет) с ручными предварительными условиями до управляемого настраиваемого пакета загрузочного приложения. Пакет настраиваемого установщика exe с привязкой к загрузке отлично подходит для новых установок. Но если мы хотим обновить наш старый продукт, который представляет собой просто msi-файл, у нас возникнут проблемы. Это то, что я пытаюсь сделать

  1. Detect RelatedMsiFeatureHandler обнаруживает, что установлен более старый пакет msi.
  2. Я обрабатываю события Plan для отдельных пакетов и устанавливаю состояния по желанию. Например: состояние = Присутствует для установки
  3. Я не могу применить (UpdateReplace), потому что у меня нет более старого пакета,

Вопрос на миллион долларов: как мне обновить этот пакет msi? Любая помощь приветствуется.

Спасибо


person roadster    schedule 03.03.2015    source источник


Ответы (2)


Все, что мне нужно было сделать, это установить MsiProperty UPGRADE = 1 в Bundle.wxs для соответствующего пакета Msi в цепочке. Это гарантирует, что при запуске Bundle.exe конкретный msi обновляется BTW: это первая версия Bundle для нас. Раньше для установки у нас был только MSI.

<MsiPackage DisplayName="Installing Main Product" SourceFile="$(var.Path_Setup)" DisplayInternalUI="no" SuppressSignatureVerification="yes" >
        ***<MsiProperty Name="UPGRADE" Value="1"/>***
        <MsiProperty Name="NAS_PATH" Value="[NasBackupPath]"/>
        <MsiProperty Name="NAS_BAK_TIME" Value="[BackupTime]"/>
      </MsiPackage>
		</Chain>

person roadster    schedule 04.03.2015

На всякий случай, если у кого-то есть похожая проблема (WIX 3.10)

this statment under the installer's Product will resolve the issue. You must update the version of the product and product upgrade code must be same with previous install.

«AllowSameVersionUpgrades» = yes не будет устанавливать один и тот же продукт рядом.

person Jayee    schedule 28.07.2016