我有一个旧的 16 位应用程序,它是为 Windows 3.1 开发的。它执行一些计算,并且是更复杂系统的一部分。系统为程序设置输入,并收集输出结果。
不幸的是,16 位程序在此期间仍然存在,因此我们必须解决它在现代操作系统上造成的挫败感。
该系统在 Windows XP 上运行,并且在物理 Windows XP 机器上运行良好。我遇到问题的机器是在 Debian 盒子上的 VirtualBox(版本 4.1.12)上运行的 Windows XP 实例。物理计算机是 HP Proliant 服务器,采用 Quad Core Xeon 3.4 Ghz。我正在使用远程桌面从我的 Windows 7 机器访问计算机。
我得到的错误是,“程序在地址:0001:02C9 的 WIN87EM.DLL 中导致了一般保护错误”。烦人的事情是,有时它有效,有时则无效,这使得故障排除变得更加令人沮丧。
通过搜索互联网,我遇到了一些提到同样问题的网站。他们似乎都没有提供真正的解决方案,只是说 WIN87EM.DLL 提供浮点例程,并且某些打印机存在一些问题。
我已经卸载了虚拟机上的所有打印机,我还尝试安装 PDF 编写器并将其设置为默认打印机 - 以便机器上有一台打印机。我已禁用与远程桌面连接的资源共享。我已经更新了机器上的虚拟机来宾驱动程序。我还尝试在可执行文件的属性中设置与 Windows 95 的兼容性。
解决此问题的任何指示,或我可以尝试使其正常工作的方法?