如何使 32 位应用程序在 64 位 Windows 上运行

第一个 Windows 系统使用基于 16 位 MS-DOS 的内核来运行图形外壳以访问系统服务。如果最后一句话让您争先恐后地寻找技术词汇表,请放心。专家和外行都可以访问本文中的信息。在 64 位版本的 Windows 中运行 32 位应用程序时,您可能会遇到一些问题。如果是这样,请继续阅读以了解发生这种情况的原因以及如何解决。

如何使 32 位应用程序在 64 位 Windows 上运行

一些必要的概念

一个简单的事实是,您一开始就不应该遇到这个问题。 Windows 有一个模拟器——如果它工作正常——为 64 位和 32 位应用程序正常运行提供必要的环境。此模拟器 (WOW64) 将 32 位应用程序与 64 位应用程序隔离,以防止文件和/或注册表冲突。根据技术说明,32 位进程无法执行 64 位 DLL,因此这可能会导致您的问题。

一些必要的概念

需要记住的是,您实际上可能正在运行一个 16 位应用程序,这肯定不会工作。检查程序是否为 16 位的快速方法是导航到其在计算机上的位置。右键单击它并从下拉菜单中选择属性。如果属性选项卡有“版本”或“以前的版本”选项卡,则它不是 16 位应用程序。

使其兼容

当您开始运行任何存在兼容性问题的软件时,您应该尝试的第一件事是在兼容模式下运行它。现在很少有问题可以实际解决,但是当 Windows 95 被 NT 取代时,这是一个非常有用的功能。

要在兼容模式下运行应用程序,请在文件资源管理器中导航到它并右键单击它。与上述相同,从菜单中单击“属性”。在属性下,单击兼容性选项卡。单击“以兼容模式运行此程序:”框,然后选择要使用的 Windows 版本。然后,单击应用并尝试运行您的应用程序。应该只有少数选项,因此请尝试全部完成。复合模式

启用 32 位应用程序

为了彻底,您可以确保在您的 Windows 服务中启用了 32 位应用程序。为此,请按照下列步骤操作:

  1. 首先通过在 Windows 搜索框中键入“windows features”并选择最佳匹配来访问 Windows 功能。
  2. 选中读取 Internet 信息服务的框,然后单击确定。安装此功能需要一分钟
  3. 通过在 Windows 搜索框中键入“互联网信息服务”并选择最佳匹配来启动 IIS 管理器。
  4. 您将在左侧窗口中看到您的计算机名称,将其展开并单击应用程序池。
  5. 在右侧窗口中,右键单击 DefaultAppPools 并选择高级设置。
  6. 选择“启用 32 位应用程序”并将其从 False 更改为 True。
  7. 单击“确定”并重新启动计算机。

完成此操作后,请尝试再次运行该应用程序。如果您的 WOW64 工作正常,这应该不是必需的,但它已被证明在某些情况下是有效的。

不正确的程序文件

较旧的程序有时会混淆安装,并且它们的文件最终可能会出现在错误的文件夹中。这特别难以检测,因为安装似乎顺利进行。

在 64 位版本的 Windows 上,所有 64 位应用程序都安装在“Program Files (x86)”文件夹中。这包括与安装的应用程序相关的任何文件。但是,32 位程序最终位于名为“Program Files”的单独文件夹中。如果安装中的路径编码不正确,则应用程序可能安装在错误的文件夹中。

不正确的程序文件

修复此问题应包括编辑一些安装代码,但您不必这样做,而且您可能无法访问源代码。对于临时解决方案,只需找到已安装的文件并将它们手动复制到“Program Files”文件夹中。

刮胡子和理发,两个位

这些只是您在运行 32 位应用程序时可能面临的一些问题。但是,再强调一次,这种情况永远不应该发生,因为已经采取了措施来防止它发生。您处理其他兼容性问题的可能性要大得多。如果您非常确信寄存器会导致问题,请从文章中概述的解决方案开始。

文章中的任何方法有帮助吗?是什么让您确定 32 位寄存器确实是导致您出现问题的原因?在下面的评论中分享您的推理。