调用外部程序

来源:互联网 发布:淘宝企业店铺注册号 编辑:程序博客网 时间:2024/06/05 00:09

调用外部程序,并且控制窗口是否显示

bool StartProgram(QString filePath, bool bVisiable, bool bWaitting){#ifdef _MSC_VER    STARTUPINFOW si;    PROCESS_INFORMATION pi;    ZeroMemory( &si, sizeof(si) );    si.cb = sizeof( si );    si.dwFlags = STARTF_USESHOWWINDOW;    //bVisiable控制窗口是否显示    if (bVisiable)    {        si.wShowWindow = SW_SHOW;    }    else    {        si.wShowWindow = SW_HIDE;    }    ZeroMemory( &pi, sizeof(pi) );    if( !CreateProcessW( NULL, (LPWSTR)filePath.utf16(), NULL, NULL, FALSE, 0,        NULL, NULL, &si, &pi ) )    {        return false;    }    //bWaiting = true, 等待程序执行完成    if (bWaitting)    {        WaitForSingleObject( pi.hProcess, INFINITE );        CloseHandle( pi.hThread );    }#endif    return true;}
0 0
原创粉丝点击