c++ 启动进程 等待进程退出

时间:2025-04-11 07:02:08
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 } }