在程序A中阻塞式的调用、执行程序B
2015-05-21 21:18
106 查看
在程序A中,需要调用执行程序B,并且要等待B结束后,才返回A继续执行。
即:A --> B -->A
方法
使用CreateProcess 创建进程,使用WaitForSingleObject等待结束信号
代码
[cpp] view
plaincopy
HANDLE hNewProcess= NULL;
STARTUPINFOA si = { sizeof(si) };
PROCESS_INFORMATION piProcess;
BOOL ret =CreateProcessA("b.exe",NULL,NULL,NULL,FALSE,NULL,NULL,NULL,&si,&piProcess);
if(ret == TRUE)
hNewProcess = piProcess.hProcess;
//等待进程结束
WaitForSingleObject(hNewProcess,INFINITE);
注:如果不需要阻塞,可使用ShellExecuteA函数,更简单
[cpp] view
plaincopy
ShellExecuteA(NULL,"open","kinect.exe",NULL,NULL,SW_SHOWNORMAL);
即:A --> B -->A
方法
使用CreateProcess 创建进程,使用WaitForSingleObject等待结束信号
代码
[cpp] view
plaincopy
HANDLE hNewProcess= NULL;
STARTUPINFOA si = { sizeof(si) };
PROCESS_INFORMATION piProcess;
BOOL ret =CreateProcessA("b.exe",NULL,NULL,NULL,FALSE,NULL,NULL,NULL,&si,&piProcess);
if(ret == TRUE)
hNewProcess = piProcess.hProcess;
//等待进程结束
WaitForSingleObject(hNewProcess,INFINITE);
注:如果不需要阻塞,可使用ShellExecuteA函数,更简单
[cpp] view
plaincopy
ShellExecuteA(NULL,"open","kinect.exe",NULL,NULL,SW_SHOWNORMAL);
相关文章推荐
- 在程序A中阻塞式的调用、执行程序B
- java程序执行,调用shell命令和shell脚本
- js调用打印机打印多联单,部分打印,执行打印事件后调用程序
- C#中利用Process类调用外部程序以及执行Dos命令
- 如何让静态库中的可执行程序不调用的函数不链接进该可执行程序?(-ffunction-sections -Wl,--gc-sections)
- asp.net 调用本地程序 调用执行exe应用程序
- popen在程序内调用可执行程序
- C# 窗体边角圆弧处理及在C#中调用外部程序(执行批处理,打开窗口等)
- VC 调用外部可执行程序
- 用java程序调用ffmpeg执行视频文件格式转换flv
- VC中如何调用其他的可执行程序
- 在程序中调用外部程序,用process返回命令执行结果以及抓取错误信息的方法
- Windows批处理 调用程序后 不等待子进程 父进程继续执行命令
- C#中利用process类调用外部程序以及执行dos命令
- 循环执行AJAX程序---将jquery 中的ajax方法设为同步调用
- c#进程中调用flashpaper可执行程序
- 在Sql Server中调用外部EXE执行程序!(已解决,彻底明白了)
- 后台执行的程序通过system()调用ffmpeg卡住 解决办法
- 用java程序调用ffmpeg执行视频文件格式转换flv
- 可执行程序调用dll过程的反编译