【问题标题】:Wix - previous product which is a feature in a future productWix - 以前的产品,它是未来产品的一个功能
【发布时间】:2014-07-03 07:37:49
【问题描述】:

过去,我们发布了一款名为 A 的产品。我们即将发布一款新产品 B,其中包含 A 作为模块(编码为 Wix 功能)。所以我们现在有了“产品 A”(以前的产品)和“模块 A”(B 的功能)。

然后我们有以下错误:卸载产品 A 不会删除功能 A 的安装,反之亦然。

我们可以让产品 B 的安装程序在 B 的安装程序启动时卸载 A(例如通过自定义操作),但我担心我们将不得不发布执行相同操作的产品 A 的新版本。

有没有更好的解决方案,不涉及发布产品A的新版本?

【问题讨论】:

    标签: wix installation release product uninstallation


    【解决方案1】:

    如果我理解正确,产品 A 已经安装,现在产品 B 已经发布,其中包含产品 A 中的所有内容。

    您不需要自定义操作 - 您可以安排重大升级,在安装产品 B 时卸载产品 A。如果产品 B 总是替换产品 A,那么它们可以具有相同的升级代码,您可以让 Windows 通过重大升级将产品 A 替换为产品 B。

    特点 A 东西是正常的。如果您先安装产品 A,然后再安装产品 B,则功能 A 中的组件将在产品 A 和 B 之间共享。当您卸载产品 A 时,产品会被删除,但组件是共享的,并且保留的功能 A 属于产品 B。这是正常的。请注意,产品之间不共享功能,只有组件之间共享。功能 A 不共享 - 产品 A 和 B 中都有一个功能 A 共享组件,仅此而已。如果您卸载了产品 A 并从产品 B 中删除了功能 A,那将是错误的。系统上没有单个功能 A - 功能仅由产品拥有。

    【讨论】:

    • 最后一句话让人迷惑。您的意思是说每个功能都由一个项目拥有:产品 A 的功能 A 与产品 B 的功能 A 不同(即使它们引用同一组组件)?
    • 升级代码的事情成功了,谢谢!也感谢您在最后一段中的解释。
    • Tom:MSI 文件中的一个特性只是到组件集合的映射。是的,产品 A 中的功能 A 是到一组组件的映射,恰好与产品 B 中的映射相同。
    猜你喜欢
    • 2011-03-09
    • 1970-01-01
    • 2011-04-05
    • 1970-01-01
    • 2019-09-11
    • 2018-09-10
    • 2022-08-24
    • 2018-07-07
    • 1970-01-01
    相关资源
    最近更新 更多