PdhAddCounterA 関数 (pdh.h)
指定したカウンターをクエリに追加します。
構文
PDH_FUNCTION PdhAddCounterA(
[in] PDH_HQUERY hQuery,
[in] LPCSTR szFullCounterPath,
[in] DWORD_PTR dwUserData,
[out] PDH_HCOUNTER *phCounter
);
パラメーター
[in] hQuery
カウンターを追加するクエリを処理します。 このハンドルは PdhOpenQuery 関数によって返されます。
[in] szFullCounterPath
カウンター パスを含む Null で終わる文字列。 カウンター パスの形式の詳細については、「カウンター パスの 指定」を参照してください。 カウンター パスの最大長はPDH_MAX_COUNTER_PATH。
[in] dwUserData
ユーザー定義値。 この値はカウンター情報の一部になります。 この値を後で取得するには、 PdhGetCounterInfo 関数を呼び出し、PDH_COUNTER_INFO構造体の dwUserData メンバー に アクセスします。
[out] phCounter
クエリに追加されたカウンターへのハンドル。 後続の呼び出しでこのハンドルを参照する必要がある場合があります。
戻り値
関数が成功した場合は、ERROR_SUCCESSを返します。
関数が失敗した場合、戻り値は システム エラー コード または PDH エラー コードです。 使用できる値を次に示します。
リターン コード | 説明 |
---|---|
|
カウンター パスを解析または解釈できませんでした。 |
|
指定したカウンターがコンピューターまたはログ ファイルで見つかりません。 |
|
カウンター パスが空です。 |
|
パスにコンピューター名が含まれず、関数がローカル コンピューター名を取得できませんでした。 |
|
指定したオブジェクトがコンピューターまたはログ ファイルで見つかりません。 |
|
このカウンターに使用する計算関数を特定できません。 |
|
1 つ以上の引数が無効です。 |
|
クエリ ハンドルが無効です。 |
|
関数を完了するために必要なメモリを割り当てられません。 |
注釈
カウンター パスにワイルドカード文字が含まれている場合、ワイルドカード文字と一致するすべてのカウンター名がクエリに追加されます。
まだ存在しないカウンター インスタンスが指定されている場合、 PdhAddCounter はエラー状態を報告しません。 代わりに、ERROR_SUCCESSを返します。 この動作の理由は、存在しないカウンター インスタンスが指定されているかどうか、または存在するが作成されていないかどうかが不明であるためです。
クエリからカウンターを削除するには、 PdhRemoveCounter 関数を 使用します。
例
例については、「 パフォーマンス カウンターの参照 」または 「ログ ファイルからのパフォーマンス データの読み取り」を参照してください。
注意
pdh.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして PdhAddCounter を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | pdh.h |
Library | Pdh.lib |
[DLL] | Pdh.dll |