首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >修改现有WIX 2脚本以添加64位组件

修改现有WIX 2脚本以添加64位组件
EN

Stack Overflow用户
提问于 2009-10-27 00:51:11
回答 2查看 1.5K关注 0票数 1

我有一个几年前用Wix2写的安装脚本。现在我需要添加两个64位组件。一个64位动态链接库复制到system32文件夹,另一个b4位可执行文件复制到ProgramFiles。

安装程序需要创建注册表项。目前,它使用一个元素来写入密钥,并使用一个自定义操作(在32位MSI dll中)来写入序列号。

64位EXE必须可以访问该密钥。

是否可以在一个MSI中完成?另外,当系统为64位时,如何创建只复制64位文件的条件?

EN

回答 2

Stack Overflow用户

发布于 2009-10-27 05:12:31

msi不允许在同一msi中安装32位和64位组件。您必须为两种体系结构创建单独的msi。

票数 1
EN

Stack Overflow用户

发布于 2009-11-13 02:06:12

为了安装64位组件,需要将MSI标记为64位,否则将重定向文件系统和注册表路径。除了添加64位属性外,32位和64位软件包应该显示为不同的产品;即,您应该创建新的产品和升级代码。

我认为使用WiX 2创建64位WiX可能会有问题,因此您可能需要升级到MSI 3.x。

由于32位Windows与64位Windows分别需要两个MSI文件,因此您可以通过不在64位安装程序中包含32位文件来轻松阻止在64位PC上安装32位文件。如果x86和x64都需要一个单独的安装程序可执行文件,则需要使用引导程序来选择要运行的MSI。我不知道WiX发行版中的burn.exe是否能做到这一点。

接近源代码布局的一种方法是使用带有条件的单个主WiX文件,该文件根据目标体系结构选择要构建的功能,然后将特定于体系结构的模块链接起来。你可以在https://svn.bluestop.org/viewvc/repos/sctpDrv/wix/上找到这样一个解决方案的例子。请注意,它只支持x86和x64,而不支持安腾(又称Intel64)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1625899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档