每当我使用 MinGW 编译 C++ 应用程序时,它们都可以在现代版本的 Microsoft Windows 中正常工作,包括 Windows 2000 和 Windows XP。
但是,当我尝试在 Windows 95 和 Windows NT 4.0 上运行它们时,我收到以下错误:
这是否意味着这些版本根本不支持运行已编译的 C++ 应用程序的想法?
注意:我还没有测试过Windows 98 和Windows ME。
编辑:我已经测试了 Windows 98。testsortingvisualization运行正常,但是tetrisimplementation显示一个空白的命令提示符并且不会停止。这两个程序都给出了上面在 Windows 95 和 Windows NT 4.0 中给出的完全相同的错误。请记住,Windows 2000 可以同时正确运行。
编辑:微软声称我使用的一些功能(WriteConsoleOutput、GetAsyncKeyState)对 Windows 2000 有最低要求。事实上,它经过测试不能在 Windows 98 中工作。我还没有找到一种更兼容的方式来进行控制台输出(系统8 位代码页、80 列、25 行、16 色)或按键检测。
MSVCRT.DLL 故障:DLL 是已编译 C++ 应用程序的关键依赖项,因此根本不可能在 Windows 95 上运行任何已编译 C++ 应用程序。
我还没有找到 NT 4.0 问题的解释。