从 Wix 自定义 BA 捆绑包升级旧的 msi
Upgrade older msi from Wix custom BA Bundle
我们正在将具有手动先决条件的 WIX msi 安装程序(不是捆绑包)升级为托管自定义引导应用程序捆绑包。 boot strapped custom installer bundle exe 适用于全新安装。但是如果我们想升级我们的旧产品,也就是一个 msi,我们就有麻烦了。这就是我想要做的
- Detect RelatedMsiFeatureHandler 检测到安装了较旧的 msi 包。
- 我正在处理单个包的计划事件并根据需要设置状态。例如:state = Present for install
- 我不能申请(UpdateReplace),因为我没有旧的 Bundle,
百万美元的问题是如何升级这个 msi 软件包?
感谢您的帮助。
谢谢
我所要做的就是在 Bundle.wxs 中为链中的相关 Msi 包设置 MsiProperty UPGRADE=1。这确保了当 Bundle.exe 为 运行 时,特定的 msi 被升级 顺便说一句:这是我们的第一个 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>
以防万一有人遇到类似问题(WIX 3.10)
安装程序产品下的此声明将解决此问题。您必须更新产品版本,产品升级代码必须与之前安装的相同。
"AllowSameVersionUpgrades" = yes 将确保不会并排安装相同的产品。
我们正在将具有手动先决条件的 WIX msi 安装程序(不是捆绑包)升级为托管自定义引导应用程序捆绑包。 boot strapped custom installer bundle exe 适用于全新安装。但是如果我们想升级我们的旧产品,也就是一个 msi,我们就有麻烦了。这就是我想要做的
- Detect RelatedMsiFeatureHandler 检测到安装了较旧的 msi 包。
- 我正在处理单个包的计划事件并根据需要设置状态。例如:state = Present for install
- 我不能申请(UpdateReplace),因为我没有旧的 Bundle,
百万美元的问题是如何升级这个 msi 软件包? 感谢您的帮助。
谢谢
我所要做的就是在 Bundle.wxs 中为链中的相关 Msi 包设置 MsiProperty UPGRADE=1。这确保了当 Bundle.exe 为 运行 时,特定的 msi 被升级 顺便说一句:这是我们的第一个 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>
以防万一有人遇到类似问题(WIX 3.10)
安装程序产品下的此声明将解决此问题。您必须更新产品版本,产品升级代码必须与之前安装的相同。
"AllowSameVersionUpgrades" = yes 将确保不会并排安装相同的产品。