更改 Wix 合并模块包 GUID?
什么时候需要更改合并模块的包 GUID?
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Module Id="MyMergeModule" Language="1003" Version="1.0.0.0">
<Package Id="SOME_GUID" Manufacturer="Me" InstallerVersion="301" />
</Module>
</Wix>
Wix3 要求为合并模块显式指定包 GUID,这与产品不同。我的合并模块将与每两周构建一次的 MSI 一起使用。这些每两周一次的 MSI 需要作为单独安装在同一台计算机上共存(例如版本 1、2、3 等...) 我是否需要为每个每两周一次的 MSI 构建更改合并模块的包 GUID ?
When is it necessary to change the package GUID of a merge module?
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Module Id="MyMergeModule" Language="1003" Version="1.0.0.0">
<Package Id="SOME_GUID" Manufacturer="Me" InstallerVersion="301" />
</Module>
</Wix>
Wix3 requires that the package GUID is explicitly specified for a merge module unlike for a product. My merge module will be used with an MSI that is built bi-weekly. These bi-weekly MSIs need to co-exist on the same machine as separate installations (e.g. versions 1, 2, 3, etc...) Do I need to change the package GUID of my merge module for each bi-weekly MSI build?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用合并模块的安装程序必须每隔一周有一个新的 ProductCode/PackageCode、一个不同的隔离目标目录,并且不能实现 MajorUpgrade。 ModuleSignature 不需要更改,因为每个已安装的产品都可以将相同的组件 ID 部署到不同的位置。
The installer that consumes the merge module will have to have a new ProductCode/PackageCode every other week, a different isolated destination directory and not implement a MajorUpgrade. The ModuleSignature doesn't need to change as each installed product can deploy the same component id's to different locations.
在 WiX v3.0+ 中,最好始终保留 Package/@Id,让工具集为您处理它。在 WiX v2.0 中,最好使用 all ? GUID,以确保为您创建新的 GUID。
In WiX v3.0+ it's best to leave the Package/@Id absent all the time and let the toolset handle it for you. In WiX v2.0 it's best to to use the all ? GUID to ensure a new GUID is creaed for you.