2

我查看了与从 WiX 写入 32 位和 64 位注册表项有关的其他答案,但找不到这个特定问题。

我有一个 IE 浏览器帮助对象的 WiX 3.6 安装程序,在 Windows 8.1 和 IE11 之前一直运行良好

问题是在新的 IE8.1 增强保护模式下,我必须注册一个 64 位一个 32 位的 BHO 供 IE 使用。以前不关心 64 位 IE,所以我做了一个 32 位 WiX 项目,它只安装了一个 32 位 DLL。在 64 位 Windows 上,WiX 在 WOW6432NODE 键下正确注册了此 DLL。

所以,我想我需要为我的 BHO 迁移到 64 位安装程序,以便在 64 位 Windows 8.1 上安装。

但是,从 64 位 WiX MSI 到安装 32 位 DLL 并写入 WOW6432NODE 密钥的正确方法是什么?我认为 WiX 不在乎它是 32 位 DLL,问题在于注册表项。有谁知道从 64 位安装程序注册 32 位 DLL 的“正确”方法?

4

1 回答 1

8

用@Win64="no" 标记包含文件和注册表值的组件。这告诉 Windows Installer 它是一个 32 位组件,并且注册表写入将被重定向到 Wow6432Node。

于 2013-11-08T03:28:18.810 回答