我正在尝试从 XP Windows 计算机的命令提示符运行一个控制台 C++ 应用程序,该应用程序与我的 DLL 文件链接。最近我开始收到“此程序无法在 DOS 模式下运行”的提示。作为错误信息。据我所知,如果在纯 MS-DOS 环境中调用此 exe,这是所有要打印的 DLL 中的填充消息。那么为什么我会在 Windows CMD 窗口中得到这个?它是否告诉我我的一个 DLL 有问题?
另外我在错误消息后立即观察到 Windows 路径描述更改如下
<------------屏幕转储---------------------------->
C:\Program Files\MYPROGRAMS\APPLICATIONS>foo.exe 该程序不能在 DOS 模式下运行。
C:\PROGRA~1\MYPROG~1\APPLICAT~1>
<----------------屏幕转储-------------------------------->
为什么路径文本会变成 Win95 风格(因为缺少更好的短语)?是否以某种方式将系统设置为某种兼容模式?
大多数谷歌搜索表明此错误仅在安装期间发生(与我的情况不同)。这个链接 http://www.personalcopy.com/doserror.htm讨论了一个变体,但复选框不再出现在 DOS 窗口属性中。
感谢任何帮助和指点。
最佳答案
首先用十六进制编辑器打开EXE,你想运行什么。打开后,你能在开始时看到MZ签名吗...如果不是MZ,可能有,Exe不是正确的形式.. ..在此之后,你可以下一步..
关于c++ - 无法运行 DLL 链接的 C++ exe。 "This program cannot be run in DOS mode."错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2697516/