PDH_STATUS PdhAddCounter( IN HQUERY hQuery, IN LPCTSTR CounterPath, IN DWORD UserData, IN HCOUNTER *hCounter);
引数の意味は以下の通り。
hQuery | (IN) | 追加先のクエリーのハンドル。 |
CounterPath | (IN) | 追加するカウンタのパス。 |
UserData | (IN) | カウンタと共に追加するユーザ定義のデータ |
hCounter | (OUT) | 追加結果のカウンタのハンドル。 |
/* メモ帳のCPU使用率を表示 */ void DispTime() { HQUERY hQuery; HCOUNTER hCounter; PDH_FMT_COUNTERVALUE FmtValue; /* 新規クエリーを作成 */ PdhOpenQuery(NULL, 0, &hQuery); /* 既に起動しているメモ帳のCPU使用率のカウンタをクエリーに追加 */ PdhAddCounter(hQuery, "\\Process(notepad#0)\\% Processor Time", 0, &hCounter); /* 計測 */ printf("計測開始...\n"); PdhCollectQueryData(hQuery); Sleep(10000); /* 十秒間待つ */ PdhCollectQueryData(hQuery); printf("計測終了.\n"); /* 今の十秒間での、メモ帳のCPUの使用率を表示 */ PdhGetFormattedCounterValue(hCounter, PDH_FMT_DOUBLE, NULL, &FmtValue); printf("メモ帳のCPU使用率: %f%%\n", FmtValue.doubleValue); /* 終了 */ PdhCloseQuery(hQuery); }