使用在32位设置模式下运行的inno设置在64位操作系统上获取本机system32

时间:2012-01-23 04:11:37

标签: inno-setup

我有一个DLL,在64位操作系统上运行时,应安装为32位和64位。 我喜欢没有定义Is64BitInstallMode,因此设置在32位模式下运行。 我的问题:{sys}返回与{syswow64}相同的内容。所以我的设置不会复制64位版本 dll到64位操作系统上的本机system32文件夹。

我怎样才能实现这一点 - 即使在32位安装模式下运行 - 在64位操作系统上也是32位二进制文​​件 复制到{syswow64}并将其64位挂件复制到real- {sys}(因此是本机64位system32文件夹)。 谢谢

1 个答案:

答案 0 :(得分:2)

我对Inno Setup一无所知,但这可能有所帮助:Win64系统上的32位进程可以使用“sysnative”别名访问真正的System32目录。因此,如果您可以说服InnoSetup将64位DLL写入“C:\ Windows \ sysnative”,它应该最终在真正的“C:\ Windows \ System32”中。 (当然,您需要处理系统安装在“C:\ Windows”以外的地方的情况。)

此处记录:http://msdn.microsoft.com/en-us/library/aa384187.aspx