在 WiX 中,32 位和 64 位版本是否应该有不同的产品 ID

发布于 2024-12-07 07:25:41 字数 95 浏览 0 评论 0原文

我正在编写一个 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

疑心病 2024-12-14 07:25:41

为了回答我自己的问题(事实证明这个问题实际上是错误的),ProductCode 属性的 MSDN 文档说:

应用程序包的 32 位和 64 位版本必须分配不同的产品代码。

结果我很困惑,我认为产品代码永远不应该改变。这是错误的。再次:

ProductCode 属性是特定产品版本的唯一标识符。对于不同的版本和语言,此 ID 必须有所不同。

To answer my own question, which it turns out was actually the wrong one to ask, the MSDN documentation for the ProductCode property says:

The 32-bit and 64-bit versions of an application's package must be assigned different product codes.

Turns out I was confused by the fact that I thought that the product code should never change. This is wrong. Again:

The ProductCode property is a unique identifier for the particular product release. This ID must vary for different versions and languages.

烟雨扶苏 2024-12-14 07:25:41

首先,我将为 32 位安装程序制作一个这样的防护:

<Condition Message="This installer does not support 64-bit Windows! ">
  <![CDATA[NOT VersionNT64]]>
</Condition>

对于 64 位安装程序,我会制作这样的防护:

<Condition Message="This installer does not support 32-bit Windows! ">
  <![CDATA[VersionNT64]]>
</Condition>

但回到你的问题。我建议您将 Product Id 设置为“*”。这确保每个构建都会创建一个新的 GUID。如果您想使用 Orca 创建补丁,您始终可以找到此 GUID。

重要的值是 UpgradeCode。此 GUID 在版本之间创建链接。我将为所有 32 位安装程序推荐一个 UpgradeCode,为所有 64 位安装程序推荐另一个 UpgradeCode。

First I would make a guard like this for the 32 bit installer:

<Condition Message="This installer does not support 64-bit Windows! ">
  <![CDATA[NOT VersionNT64]]>
</Condition>

and this for the 64 bit installer:

<Condition Message="This installer does not support 32-bit Windows! ">
  <![CDATA[VersionNT64]]>
</Condition>

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文