我最近在玩一些旧游戏的时候,发现Windows 10已经悄悄地取消了内置的NTVDM模拟器功能,因此需要通过第三方小工具来建立执行环境。
哇!原来Windows还有这一手。
在1995年操作系统从Windows 3.1过渡到Windows 95的时候,因为Windows 95仍然是建立在DOS上的软件,本质仍然是16/32位元混合系统,所以不需要修改就能直接执行旧的16位应用程序,同时也能支持新的32位应用程序。然而,基于Windows NT的操作系统则无法直接实现上述兼容性。
为了解决这个问题,Microsoft在1993年为采用IA-32处理器架构的IA-32 Windows NT操作系统提供了NTVDM(NT Virtual DOS Machine,NT DOS虚拟机),使用户能够在32位元的Windows NT操作系统中执行16位Windows应用程序以及16、32位DOS应用程序。

此外,Microsoft还推出了Windows on Windows(简称WOW)兼容层,能够扩展通过NTVDM执行为Windows 3.x开发的旧式16位Windows应用程序的兼容性。之后,Microsoft还推出了WOW64,使64位Windows操作系统能够执行32位应用程序。
不过,根据Microsoft官方网站的《NTVDM and 16-bit app support》说明文件,NTVDM无法支持64位操作系统,所以64位Windows操作系统上无法正常启用该功能。
图片
元股证券:ygzq.hk
官方说明文件提到在Windows 10启用NTVDM的方式如下:
图片
但64位的Windows 10无法正常启用该功能。
图片
在不启用NTVDM的情况下,Windows 10无法运行为Windows 3.1开发的16位应用程序。
通过 winevdm 达到兼容目的
下载地址:https://github.com/otya128/winevdm/releases
开发者otya128开发的winevdm工具软件功能与NTVDM类似,它集成了处理器模拟器、基于Wine的Win16->Win32转换代码(wine based Win16->Win32 conversion codes)、16位元DOS模拟器等组件,能够让64位元的Windows 10操作系统运行16位应用程序。
下载并解压缩winevdm之后,只需将16位应用程序拖放到otvdm.exe上,即可直接执行。如果出现“遗失VCRUNTIME140.dll”的错误信息,只需安装Microsoft Visual C++ Redistributable for Visual Studio 2017(32-bit)即可解决问题。
此外,用户也可以通过执行解压缩得到的install快捷方式安装程序,这样就可以像打开普通程序一样,双击16位应用程序即可直接执行。如果winevdm的登录文件被Windows Update覆盖而失效,只需重新执行install即可,读者也可以通过执行uninstall.reg解除安装。
小杨实际以Glider 4.0游戏进行测试,在未安装winevdm的情况下,执行Glider 4.0会出现“此应用程序无法在您的电脑上运行”的错误信息,而安装之后,游戏就能正常运行,不过在游戏中进行按键设置时,会发生死机情况,此外没有发现其他问题。
图片
下载并解压缩winevdm之后,可以选择执行install快捷方式安装程序(之后可以直接双击16位应用程序执行),或者将16位应用程序拖放到otvdm.exe上执行。
图片
在测试过程中唯一发现的Bug是进行按键设置时会触发死机。
北京证券股票配资虽然到现在还需要执行的Windows 3.1程序已经所剩无几,但万一遇到需要的时候,就可以通过winevdm实现兼容的效果,并省去安装虚拟机的麻烦配资资质查询,这真是一个方便的解决方案。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。淘配网|互联网股票配资与实盘服务平台提示:本文来自互联网,不代表本网站观点。