![强制应用程序在 64 位 Windows 上以 32 位进程运行](https://linux22.com/image/1302983/%E5%BC%BA%E5%88%B6%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E5%9C%A8%2064%20%E4%BD%8D%20Windows%20%E4%B8%8A%E4%BB%A5%2032%20%E4%BD%8D%E8%BF%9B%E7%A8%8B%E8%BF%90%E8%A1%8C.png)
有什么方法可以强制应用程序在 64 位 Windows 上以 32 位模式运行?
我的操作系统是 Windows 7 64 位。
答案1
如果您尝试运行 64 位程序,则无法将其作为 32 位程序运行。可执行文件格式不同,系统调用是为 64 位设计的。简而言之,它与 32 位环境不兼容。这就是为什么您无法在 32 位操作系统和 32 位处理器上运行 64 位可执行文件的原因。
如果您尝试运行 32 位程序,则该程序已经以 32 位运行。64 位处理器与 32 位程序兼容。64 位 Windows(或任何其他 64 位操作系统)通过模拟或任何其他技术将 32 位系统调用替换为 64 位系统调用。
因此,x 位与处理器、操作系统和可执行文件有关;它不是一种模式。您无法强制 64 位可执行文件以 32 位运行。Windows 进程列表上的 32 位指示仅显示程序实际上是 32 位的,因此在 32 位系统调用仿真模式下运行。您无法人为地强制执行此操作。