請問msgwaitformutipleobject怎麼用? |
答題得分者是:RaynorPao
|
sgarda
一般會員 ![]() ![]() 發表:13 回覆:1 積分:2 註冊:2008-07-22 發送簡訊給我 |
請問msgwaitformutipleobject怎麼用?有沒有sample code
跟waitforsingleobject有何差 為何我寫 HANDLE hand1; hand1=ShellExecute(----,"c:\hello.txt" ,-----------------------); waitforsingleobject(hand1,INFINITE); hand1=ShellExecute(----,"c:\hello2.txt" ,-----------------------); ////handle change to open the other file 不能讓hello2等hello開啟再執行?若我要改寫成hello.txt開啟後再關掉 產生的觸發再來啟動hello2.txt要怎麼寫?
------
sgarda 編輯記錄
taishyang 重新編輯於 2008-07-23 09:59:34, 註解 無‧
|
RaynorPao
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:139 回覆:3622 積分:7025 註冊:2002-08-12 發送簡訊給我 |
請使用 CreateProcess (參考以下的範例程式碼,再自行修改)
[code cpp] AnsiString AppPath=ExtractFilePath(Application->ExeName); TStringList *sl=new TStringList; sl->Add("notepad.exe " AppPath "hello.txt"); sl->Add("notepad.exe " AppPath "hello2.txt"); for(int i=0; i { DWORD rt=0; STARTUPINFO si; PROCESS_INFORMATION pi; ZeroMemory(&si, sizeof(si)); si.cb=sizeof(si); ZeroMemory(&pi, sizeof(pi)); if(!CreateProcess(NULL, sl->Strings[i].c_str(), NULL, NULL, FALSE, CREATE_NEW_PROCESS_GROUP NORMAL_PRIORITY_CLASS, NULL, NULL, &si, &pi)) { ShowMessage("CreateProcess failed!"); return; } do { rt=WaitForSingleObject(pi.hProcess, 0); Application->ProcessMessages(); Sleep(100); } while(rt==WAIT_TIMEOUT); CloseHandle(pi.hProcess); CloseHandle(pi.hThread); } delete sl;
------
-- 若您已經得到滿意的答覆,請適時結案!! -- -- 欲知前世因,今生受者是;欲知來世果,今生做者是 -- -- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 -- |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |