【问题标题】:How to retain the previous version of app on user cancel - Wix Installer Upgrade如何在用户取消时保留以前版本的应用程序 - Wix 安装程序升级
【发布时间】:2015-04-19 04:25:53
【问题描述】:

我有一个使用 Wix 的 APP 安装程序。 现在我需要升级APP而不卸载以前的版本。所以我一直用下面的方法升级我的APP,不用卸载。

<Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
<Upgrade Id="7c4d0532-0ee4-49e8-92f4-77792293fcab">
  <UpgradeVersion
     Minimum="1.0.0.0" Maximum="99.0.0.0"
     Property="PREVIOUSVERSIONSINSTALLED"
     IncludeMinimum="yes" IncludeMaximum="no" />
</Upgrade>

在安装新版本的过程中,它会卸载应用程序并安装新版本。

但是当用户在卸载早期版本后立即取消向导时,整个应用程序将从 PC 中丢失。 新版本安装被取消,旧版本被卸载。 没有发生回滚操作,不保留之前的版本。

在这种情况下有什么方法可以保留以前的版本。

【问题讨论】:

    标签: wix windows-installer wix3.5


    【解决方案1】:

    假设没有其他问题,RemoveExistingProducts 操作必须在 InstallInitialize 和 InstallFinalize 之间,事务才能回滚并重新安装旧产品。你没有说你的 REP 是在哪里排序的。

    如果介于这两个操作之间,则问题可能是重新安装原始产品失败。它刚刚被卸载,现在正在重新安装,作为卸载的回滚,这种情况可能不是产品可以处理的情况。检查详细日志。

    【讨论】:

    • 我已经解决了这个问题。正如你所说,REP 是在 InstallInitialize 之前进行排序的。一旦做了After InstallInitialize,到现在还没发现问题..
    猜你喜欢
    • 1970-01-01
    • 2014-05-10
    • 2017-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-11
    相关资源
    最近更新 更多