我在dev c ++开发了一个程序,编译器名称为CorrectPrgm.cpp
,并希望运行由CorrectPrgm.exe
文件创建的CorrectPrgm.cpp
。来自Le.cpp
,这是在turbo c ++ 3.0编译器中开发的,我的需要是在运行时Le.cpp
我要调用/运行CorrectPrgm.exe
。 CorrectPrgm文件接受来自用户的文件名,并将输出生成为令牌列表。
我试过这样:
system("C:\\CorrectPrgm.EXE");
不工作.. 任何其他方式来打电话...... 任何帮助将不胜感激..
答案 0 :(得分:1)
如果您使用的是Windows Vista及更高版本,可能无法运行它,因为我相信这将是一个16位DOS应用程序。如果它是32位DOS应用程序(通过DPMI保护模式,但不太可能),那么它可能也会运行,但那是很久以前要记住的。
在Windows 7上,您可以安装Windows XP模式(实际上是Virtual PC内置类型),然后从那里运行它。 XP仍然支持16位应用程序。
答案 1 :(得分:0)
我相信您可以使用其中一个exec
或spawn
函数。
答案 2 :(得分:0)
您可以为要调用的程序创建单独的进程。但是你会遇到很多问题。首先。 correctPrgm.exe
和le.exe
将在两个单独的过程中执行。所以你必须考虑进程间通信。
我建议的最好的事情是在函数中打破CorrectPrgm.exe源文件并调用所需的函数。即使您可以使用库和头文件来获取这些功能的功能。
您还可以创建线程。但是你必须非常仔细地设计线程(在一个线程中CorrectPrgm
将运行)。