我有一个 32 位应用程序,当安装带有 installshield 时,需要写入 64 位注册表



我有一个安装项目(installshiedl),我需要在注册表中写入一个值,Internet Explorer读取该值以强制其模拟器模式为8.0版。但是当我在 64 位操作系统上运行它时,它是在 wow6432node 下编写的,这是不可接受的,因为 Internet Explorer 不针对注册表的这一部分。当我的应用程序为 32 位时,如何强制 installshield 以 64 位注册表为目标?

指定所有将来的常规注册表操作都会影响注册表的 64 位部分,而不是注册表的 32 位部分(在 64 位系统上)。

REGDB_OPTIONS = REGDB_OPTIONS |REGDB_OPTION_WOW64_64KEY;

RegDBSetKeyValueEx ( szKey, szName, nType, szValue, nSize );

REGDB_OPTIONS = REGDB_OPTIONS & ~REGDB_OPTION_WOW64_64KEY;

最新更新