【问题标题】:How to get Wix Burn bundle to block upgrade如何获得 Wix Burn 捆绑包以阻止升级
【发布时间】:2015-09-03 13:56:09
【问题描述】:

我发布了一系列产品的 beta 版本,用户必须在安装“最终公开版本”之前删除这些版本。

在这种情况下,我通常会进行重大升级,但在这种情况下,由于产品的性质,重大升级很难实施。未来的升级从“干净的基线”开始会容易得多。

是否有内置的方式来让刻录检测并通知用户必须卸载以前安装的版本?

或者我是否需要将包添加到执行检查、显示消息并使包失败的包中?

如果它与答案相关,则所有以前的版本都具有相同的 major.minor.patch 版本。只是内部版本号发生了变化,例如1.0.0.1、1.0.0.20、1.0.0.50;最终版本是 1.0.0.100。

【问题讨论】:

    标签: wix upgrade burn


    【解决方案1】:

    假设您产品的 MSI 中的升级表是按照“正常”用法构建的,您可以在 BA 中使用 OnDetectRelatedMsiPackage 回调来评估找到的每个安装。您需要在该回调中调用 MsiGetProductInfo() API(或 DTF 等价物?)以获取版本字符串,然后解析该字符串以确定安装的版本号是否小到足以阻止/失败您的安装。

    请注意,Windows Installer 中的主要升级机制仅检查版本 quad 的前三个部分,因此 Windows Installer 本身无法区分 1.0.0.1 和 1.0.0.100。您可能有一个问题需要解决。

    【讨论】:

      猜你喜欢
      • 2012-02-11
      • 1970-01-01
      • 2017-03-04
      • 2014-01-26
      • 2015-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多