[問題] 如何得知所有正在執行的應用程式資訊??

看板Programming作者 (三腳貓的把戲)時間18年前 (2007/12/06 19:09), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
像是 Windows 下按 ctrl-alt del 的時候會跑出來的工作管理員,  可以看到目前有多少應用程式正在執行中,  這些資訊要如何從程式中得知呢? 我是在 VS 2005 下寫 MFC,  現在找到一些頭緒,但似乎觀念上有點不太對... 大概像底下這樣子: CWnd *p_ActiveWindow; CWnd *p_PreviousWindow; // 找到目前的 CWnd p_ActiveWindow = p_ActiveWindow->GetActiveWindow(); // 找下一個 CWnd p_PreviousWindow = p_ActiveWindow->GetNextWindow(GW_HWNDNEXT); // 一直找下去... while(p_ActiveWindow!=p_PreviousWindow) // <-- 這個判斷應該有問題... { p_PreviousWindow = p_PreviousWindow->GetNextWindow(GW_HWNDNEXT); } ====== 有以下幾個問題...  1. GetActiveWindow() 找到的是 [Windows 工作管理員] => [應用程式] 裡面所顯示的那些應用程式嗎?  2. 如果我一直用 GW_HWNDNEXT 找下去,到最未端後再 Next 會回到最前頭嗎? 我這麼做是因為我不知道第一個 CWnd 怎麼找,也不知道總共有幾個, 有沒有函式能夠幫我做到這兩件事呢? 3. 紀錄程式名稱的字串(?)藏在 CWnd 的哪裡呢? 我在 MSDN 裡找到一個函式,CWnd::GetWindowInfo, 似乎可以把資料傳進 WINDOWINFO structure 裡, 但是要去找 WINDOWINFO 時卻是一片空白... ====== 有勞大家了,黑龍江邊裸身跪謝... <(_ _)> --  追根究底所得到的東西,是失望的觀眾,以及狼狽的魔術師... De'Ring Practice http://www.im.tv/vlog/Personal/623262/2093392 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.42.81
文章代碼(AID): #17LzXz5F (Programming)
文章代碼(AID): #17LzXz5F (Programming)