在 WiX 中,32 位和 64 位版本是否应该有不同的产品 ID
我正在编写一个 WiX 安装程序,其中包含适用于该产品的 32 位和 64 位版本的一组通用 WiX 源。
问题是,我应该为不同的版本使用不同的产品 ID 吗?
I'm writing a WiX installer, with a common set of WiX sources for the 32 bit and 64 bit versions of the product.
The question is, should I use different Product Ids for the different versions?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
为了回答我自己的问题(事实证明这个问题实际上是错误的),ProductCode 属性的 MSDN 文档说:
结果我很困惑,我认为产品代码永远不应该改变。这是错误的。再次:
To answer my own question, which it turns out was actually the wrong one to ask, the MSDN documentation for the ProductCode property says:
Turns out I was confused by the fact that I thought that the product code should never change. This is wrong. Again:
首先,我将为 32 位安装程序制作一个这样的防护:
对于 64 位安装程序,我会制作这样的防护:
但回到你的问题。我建议您将 Product Id 设置为“*”。这确保每个构建都会创建一个新的 GUID。如果您想使用 Orca 创建补丁,您始终可以找到此 GUID。
重要的值是 UpgradeCode。此 GUID 在版本之间创建链接。我将为所有 32 位安装程序推荐一个 UpgradeCode,为所有 64 位安装程序推荐另一个 UpgradeCode。
First I would make a guard like this for the 32 bit installer:
and this for the 64 bit installer:
But back to your question. I recommend that you set Product Id to "*". This ensures that every build creates a new GUID. You can always find this GUID, if you want to create a patch, using Orca.
The important value is the UpgradeCode. This GUID creates a link between versions. I will recommend one UpgradeCode for all your 32 bit installers and another UpgradeCode for all you 64 bit installers.