3

我想发布 Setup Project 的 setup.msi 输出和 Setup.BootStrapper Project 的 setup.exe 输出,它会刻录 Setup.msi。由于我想同时发布(setup.msi & setup.exe)所以,安装顺序是不可预测的。如果用户先安装 setup.exe 然后 setup.msi 它工作正常。它提供了“删除”和“修复”选项。但如果先安装 msi,然后使用 exe,那么它也会安装 setup.exe。因此,它在 ARP 中显示了两个设置。我该如何解决这个问题?

4

2 回答 2

1

在 ARP 中看到 2 个条目表明 MSI 和 EXE 具有不同的 ProductCode 值。您可能将 Product@Id 属性设置为 *。通常这是正确的,但在您的情况下并非如此。MSI 和 EXE 可能也有不同的 PackageCode 值。(包@Id)

两种解决方案:

1)构建EXE,然后使用构建后事件提取MSI

2) 构建 EXE 和 MSI 两次,但将 GUID 生成放入您的构建自动化中,并将其作为变量传递到 WiX 构建中,这样它们都可以获得相同的值。

于 2012-07-30T12:03:24.660 回答
0

将此语句放在您的 MSI 项目中,这将防止 MSI 表单在 ARP 中创建 ICON。

<Property Id="ARPSYSTEMCOMPONENT" Value="1" />
于 2012-08-17T07:23:56.093 回答