15

我有一个这样的 MSI 设置:

<Product Id="*" ... UpgradeCode="4207FF3B-5E0D-4311-9DFC-B41AA8DE2965" />
    <MajorUpgrade DowngradeErrorMessage="Can't downgrade" />

它按预期工作:

  1. 安装产品
  2. 重新编译(有效生成新的Id)
  3. 启动新的 msi 文件会显示更改视图,我可以修复或卸载产品。

好的。但随之而来的是燃烧。

我已经创建了最简单的捆绑包。我使用标准的引导程序并只添加一个 MsiPackage:

<MsiPackage SourceFile="$(var.Setup.TargetPath)" />

问题是每次重新编译后,我都可以在已经安装的产品旁边再次安装该产品,而无需更改任何东西!这会导致重复的 ARP 条目!

如果我不重新编译并运行捆绑 exe 文件两次,我将按预期获得修改设置屏幕。我可以做些什么来获得与仅使用 MSI 时相同的刻录行为?

4

1 回答 1

8

增加捆绑包版本号,Burn 将升级以前的版本并将其删除。

于 2012-07-21T05:38:59.473 回答