0

我在 dev c++ 编译器中开发了一个程序,文件的名称是CorrectPrgm.cpp并且想要运行CorrectPrgm.exeCorrectPrgm.cpp文件创建。它是Le.cpp在 turbo c++ 3.0 编译器中开发的,我的需要是在运行时Le.cpp我想调用/运行CorrectPrgm.exe。CorrectPrgm 文件接受来自用户的文件名并生成作为令牌列表的输出。

我试过这样:

system("C:\\CorrectPrgm.EXE");

不工作..任何其他方式打电话...任何帮助将不胜感激..

4

3 回答 3

1

如果您使用的是 Windows Vista 及更高版本,则可能无法运行它,因为我相信这将是一个 16 位 DOS 应用程序。如果它是 32 位 DOS 应用程序(通过 DPMI 保护模式,但不太可能),那么它也可能运行,但那是很久以前的事了,无法记住如何运行。

在 Windows 7 上,您可以安装 Windows XP 模式(实际上是内置的 Virtual PC),然后从那里运行它。XP 仍然支持 16 位应用程序。

于 2012-06-24T04:29:23.443 回答
0

我相信您可以使用execorspawn功能之一。

于 2012-06-24T04:27:06.967 回答
0

您可以为要调用的程序创建一个单独的进程。但是你会面临很多问题。首先。correctPrgm.exe并将le.exe在两个单独的过程中执行。所以你必须考虑进程间通信。我建议的最好的方法是在函数中破坏 CorrectPrgm.exe 源文件并调用您需要的函数。甚至您也可以使用库和头文件来获取这些函数的功能。您还可以创建线程。但是你必须CorrectPrgm非常仔细地设计线程(在一个线程中运行)。

于 2012-06-25T10:46:19.423 回答