當前位置:編程學習大全網 - 行動軟體 - ShellExecute第壹次調用打開壹個exe文件可以,第二次就返回26,怎麽解決?

ShellExecute第壹次調用打開壹個exe文件可以,第二次就返回26,怎麽解決?

就用ShellExecute連續打開兩個不同的文件也會導致崩潰,vs也會壹起崩潰了。而且打開的文件之前是沒有打開過的。用函數WaitForSingleObject 會等待已經打開的文件關閉後繼續執行主程序,雖然不會導致程序崩潰但影響用戶體驗。問題仍然沒有徹底解決

SHELLEXECUTEINFO?sei;

memset(&sei,?0,?sizeof(SHELLEXECUTEINFO));?

sei.cbSize?=?sizeof(SHELLEXECUTEINFO);

sei.fMask?=?SEE_MASK_NOCLOSEPROCESS;

sei.lpVerb?=?_T("open");

sei.lpFile?=?_T("aa.exe");

sei.nShow?=?SW_SHOWDEFAULT;

ShellExecuteEx(&sei);

WaitForSingleObject(sei.hProcess,?INFINITE);

CloseHandle(sei.hProcess);

參考:bbs.csdn.net/topics/30063042

  • 上一篇:西班牙十大奢侈品牌
  • 下一篇:NavicatforMySQL數據庫怎樣連接
  • copyright 2024編程學習大全網