繁体   English   中英

Inno Setup以32位模式安装到SysWOW64

[英]Inno Setup install to SysWOW64 in 32Bit mode

我正在创建一个仅需要安装32位文件的安装程序,它们可以在64位和32位计算机上工作。

我在64位计算机上运行Inno安装程序,即使安装模式为32位,文件仍最终保存在SysWOW64文件夹中。 Dest指令设置为{sys}

Source: "C:\Users\Lablabla\Documents\Visual Studio 2013\Projects\Test\MyDll.dll"; DestDir: "{sys}"; Flags: 32bit

奇怪的是,日志显示目标为system32 ,安装模式为32位

2015-04-12 01:04:14.046   64-bit Windows: Yes
2015-04-12 01:04:14.046   Processor architecture: x64
2015-04-12 01:04:14.046   User privileges: Administrative
2015-04-12 01:04:14.046   64-bit install mode: No
....
2015-04-12 01:04:20.237   Dest filename: C:\Windows\system32\MyDll.dll

但是,完成安装后,即使可执行文件位于“ Program Files (x86)的正确位置,该文​​件也位于SysWOW64文件夹中。

即使将特定的32bit标志设置为dll文件,也会发生这种情况。

安装非常简单,只有这个dll和一个可执行文件。 没有注册表或其他更复杂的东西。

任何人都经历过这样的事情吗?

谢谢

SysWOW64文件夹是在64位系统上进行32位安装的正确位置,就像Program Files (x86)文件夹是正确的位置一样。 SysWOW64是“ Windows 64位Windows”安装上的System32文件夹。

诚然,为避免混淆,Microsoft应该在命名这些名称方面做得更好。 即,在64位安装上, System32实际上是“ System64”,而SysWOW64是“ System32”,就像普通的Program Files实际上是“ Program Files(x64)”一样,如果您想这样想的话。 所有32位应用程序都在64位Windows上的WOW64(Windows 64位为Windows 32位)模拟器中运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM