c++运行外部程序
c++运行外部程序时,如用WinExec("1.exe",SW_HIDE),如何设置,使1.exe运行结束后再执行后面的代码?或者如何在程序中更新一个txt文本的内容?...
c++运行外部程序时,如用WinExec("1.exe",SW_HIDE),如何设置,使1.exe运行结束后再执行后面的代码?
或者如何在程序中更新一个txt文本的内容? 展开
或者如何在程序中更新一个txt文本的内容? 展开
1个回答
展开全部
你用WinExec来试图这样做是比较困难的,因为WinExec新调用的进程是异步执行的。
WINEXEC是异步执行。不能等待命令结束。
可用
CreateProcess( "测试程序.exe ", NULL, NULL, NULL,
FALSE, 0, NULL, NULL, &si, &mProcessInfor);
//用下面地代码等待程序执行结束:
WaitForSingleObject(mProcessInfor.hProcess, INFINITE);
WINEXEC是异步执行。不能等待命令结束。
可用
CreateProcess( "测试程序.exe ", NULL, NULL, NULL,
FALSE, 0, NULL, NULL, &si, &mProcessInfor);
//用下面地代码等待程序执行结束:
WaitForSingleObject(mProcessInfor.hProcess, INFINITE);
追问
但是像这样写的话,运行之后并没有程序被执行啊
追答
你自己在调试一下参数,到MSDN查看一下该函数的参数。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询