c++ 启动进程 等待进程退出
void startupExe(const std::wstring& paras)
{
STARTUPINFO startupInfo;
PROCESS_INFORMATION procInfo;
memset(&startupInfo, 0, sizeof(startupInfo));
memset(&procInfo, 0, sizeof(procInfo));
//commandLine
wchar_t commandLine[16];
memset(&commandLine, 0, sizeof(commandLine));
wcscpy_s(commandLine, paras.c_str());
if (CreateProcess(
desktopPath.c_str(),
commandLine, //我的 paras = L" /s", 此处注意 /s 前面的空格
nullptr,
nullptr,
false,
CREATE_SUSPENDED,
nullptr,
nullptr,
&startupInfo,
&procInfo)
!= 0)
{
ResumeThread(); //唤醒线程
WaitForSingleObject(, INFINITE);//等待进程结束,时间:无限
//关线程/进程
CloseHandle();
CloseHandle();
//output success
}
else
{
//rescue
//output fail
}
}