BOOL bRet = CreateProcess(
NULL, // 不在此指定可执行文件的文件名
szCmdline,// 命令行参数
NULL, // 默认进程安全性
NULL..., // 默认进程安全性
FALSE, // 指定当前进程内句柄不可以被子进程继承
CREATE_NEW_CONSOLE, // 为新进程创建一个新的控制台窗口
NULL, // 使用本进程的环境变量...NULL, // 使用本进程的驱动器和目录
&si,
&pi);
if (bRet)
{
WaitForSingleObject( pi.hProcess, INFINITE )...;
// 不使用的句柄最好关掉
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
qDebug("新进程的ID号:%d\n", pi.dwProcessId...);
qDebug("新进程的主线程ID号:%d\n", pi.dwThreadId);
}
功能更加强大,可以隐藏控制台弹窗,可以等待进程执行完毕。