【问题标题】:Upgrade older msi from Wix custom BA Bundle从 Wix 自定义 BA Bundle 升级旧的 msi
【发布时间】:2015-03-03 01:46:19
【问题描述】:

我们正在将具有手动先决条件的 WIX msi 安装程序(不是捆绑包)升级到托管自定义引导应用程序捆绑包。引导捆绑的自定义安装程序包 exe 适用于全新安装。但是如果我们想升级我们的旧产品,它只是一个微星,我们就有麻烦了。这就是我想做的事情

  1. Detect RelatedMsiFeatureHandler 检测到安装了较旧的 msi 包。
  2. 我正在处理各个包的计划事件并根据需要设置状态。例如:state = Present for install
  3. 我无法应用(UpdateReplace),因为我没有旧的 Bundle,

百万美元的问题是如何升级这个 msi 包? 任何帮助表示赞赏。

谢谢

【问题讨论】:

    标签: wix bootstrapper


    【解决方案1】:

    我所要做的就是在 Bundle.wxs 中为链中的相关 Msi 包设置 MsiProperty UPGRADE=1。这确保了当 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>

    【讨论】:

      【解决方案2】:

      以防万一有人遇到类似问题 (WIX 3.10)

      安装程序产品下的此声明将解决该问题。您必须更新产品的版本,并且产品升级代码必须与之前的安装相同。

      "AllowSameVersionUpgrades" = yes 将确保不会并排安装相同的产品。

      【讨论】:

        猜你喜欢
        • 2017-12-27
        • 1970-01-01
        • 2018-06-21
        • 1970-01-01
        • 1970-01-01
        • 2011-02-16
        • 1970-01-01
        • 2016-02-28
        • 1970-01-01
        相关资源
        最近更新 更多