我可以同时发布msi和exe吗



我想释放setup Project的setup.msi输出和燃烧setup.msi的setup.BootStrapper Project的setup.exe输出。由于我想释放两者(setup.msi&setup.exe)因此,安装顺序不可预测。如果用户先安装setup.exe,然后安装setup.msi,则工作正常。它提供了"删除"one_answers"修复"选项。但是如果先安装msi,然后使用exe,那么它也会安装setup.exe。因此,它显示了ARP中的两个设置。我该如何解决这个问题?

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

两种解决方案:

1) 生成EXE,然后使用postbuild事件提取MSI

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

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

<Property Id="ARPSYSTEMCOMPONENT" Value="1" />

相关内容

  • 没有找到相关文章

最新更新