且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Win32位应用程序可以在64位服务器上运行吗?

更新时间:2022-05-15 04:03:34

通常,32位应用程序将在64位Windows(在技术上称为WOW64-Windows On Windows)下运行)。这适用于迄今为止的所有64位Windows版本,包括Server。

In general, 32-bit applications will run under a 64-bit Windows (This is technically called WOW64 - Windows On Windows). This applies to all 64-bit Windows version to date, including Server.

WOW64进程在任务管理器中用* 32标记,例如:chrome.exe * 32。 Sysinternals的Process Explorer对此有单独的一列:图像类型(64位与32位)。

WOW64 processes are marked in task manager with *32, For example: chrome.exe *32. Sysinternals' Process Explorer has a separate column for this: Image Type (64 vs 32-bit).

如果应用程序具有托管在其他进程内部的组件,则这些组件必须

If the app has components hosted inside other processes, then those components must accommodate processes they're hosted in. Examples:


  • Shell扩展托管在explorer.exe中,其位数与操作系统的位数匹配。因此,您应该同时编译32位和64位扩展名,并在安装过程中注册与操作系统位数匹配的扩展名。

  • 内核模式驱动程序托管在内核中,该驱动程序的内核位也与操作系统的位匹配。因此,上面的方法适用。

  • Winsock LSP(分层服务提供程序)托管在所有64位(本机)和32位(WOW64)进程中。因此,您应该同时编译32位和64位LSP,并在安装过程中分别在各自的目录中注册。

还有关于文件重定向(System32 / SysWOW64 / SysNative)和注册表重定向(Wow6432Node)的注意事项,我将不再赘述。

There are also considerations regarding file redirection (System32 / SysWOW64 / SysNative) and registry redirection (Wow6432Node), which I will not go into.