运行 32 位应用程序
WOW64 是 x86 仿真器,它允许基于 32 位Windows的应用程序在 64 位Windows上无缝运行。 这允许 32 位 (x86) Windows 应用程序在 64 (位 x64) Windows中无缝运行,以及 32 位 (x86) 和 32 位 (ARM) Windows 应用程序在 64 位 (ARM64) Windows中无缝运行。 WOW64 随操作系统一起提供,无需显式启用。 有关详细信息,请参阅 WOW64 实现详细信息。
系统将 32 位应用程序与 64 位应用程序隔离开来,其中包括防止文件和注册表冲突。 支持控制台、GUI 和服务应用程序。 该系统为剪切和粘贴和 COM 等方案提供跨 32/64 边界的互操作性。 但是,32 位进程无法加载 64 位 DLL 来执行,64 位进程无法加载 32 位 DLL 来执行。 此限制不适用于加载为数据文件或图像资源文件的 DLL;有关详细信息,请参阅 LoadLibraryEx。
如果面向Windows 10) ,则 32 位应用程序可以通过调用 IsWow64Process 函数来检测它是否在 WOW64 下运行, (使用 IsWow64Process2。 应用程序可以使用 GetNativeSystemInfo 函数获取有关处理器的其他信息。
请注意,64 位Windows不支持运行基于 16 位Windows的应用程序。 主要原因是句柄在 64 位Windows上有 32 个有效位。 因此,无法截断句柄并将其传递到 16 位应用程序,而不会丢失数据。 尝试启动 16 位应用程序失败,并出现以下错误: ERROR_BAD_EXE_FORMAT。
本节内容