- ベストアンサー
タスクマネージャーの状態の取得方法について。
質問があります。 タスクマネージャーに表示されている各タスクの状態(実行中、応答なしetc)を取得するようなAPIはあるのでしょうか? タスクマネージャーには存在するが、応答なしの状態のタスクがあった場合に、一旦タスクを落として再度実行させる監視ツールを作ろうと思っています。 ご存知の方がいらっしゃれば、ご教授願います。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Windowsですよね? CreateToolhelp32Snapshot によってスナップショットをとり、 Process32Firstと Process32Next とで検索して情報を得ます。 std::vector<PROCESSENTRY32> Result; HANDLE hSnapshot = CreateSnapshot(TH32CS_SNAPPROCESS , 0); if (hSnapshot != (HANDLE)-1) { // 最初のプロセスに関する情報を取得 PROCESSENTRY32 pe; pe.dwSize = sizeof(PROCESSENTRY32); if ( Process32First(hSnapshot, &pe) ) { do { Result.push_back(pe); } while(lpfProcess32Next(hSnapshot, &pe) ); } // スナップショットを破棄 CloseHandle(hSnapshot); }
お礼
回答ありがとうございます。 参考にさせていただきます。ありがとうございました。