PdhGetCounterInfoA 関数 (pdh.h)
データ サイズ、カウンターの種類、パス、ユーザー指定のデータ値など、カウンターに関する情報を取得します。
構文
PDH_FUNCTION PdhGetCounterInfoA(
[in] PDH_HCOUNTER hCounter,
[in] BOOLEAN bRetrieveExplainText,
[in, out] LPDWORD pdwBufferSize,
[out] PPDH_COUNTER_INFO_A lpBuffer
);
パラメーター
[in] hCounter
情報を取得するカウンターのハンドル。 PdhAddCounter 関数は、このハンドルを返します。
[in] bRetrieveExplainText
Explain テキストを取得するかどうかを決定します。 このパラメーターを TRUE に設定すると、カウンターの explain テキストが取得されます。 このパラメーターを FALSE に設定すると、返されるバッファー内のフィールドは NULL になります。
[in, out] pdwBufferSize
lpBuffer バッファーのサイズ (バイト単位)。 入力時に 0 の場合、関数は PDH_MORE_DATAを返し、このパラメーターを必要なバッファー サイズに設定します。 バッファーが必要なサイズより大きい場合、関数は、このパラメーターを使用したバッファーの実際のサイズに設定します。 入力時に指定したサイズが 0 より大きく、必要なサイズより小さい場合は、返されたサイズに依存してバッファーを再割り当てしないでください。
[out] lpBuffer
PDH_COUNTER_INFO構造体を受け取る呼び出し元によって割り当てられたバッファー。 構造体の固定形式部分の末尾に文字列データが追加されるため、構造体は可変長です。 これは、呼び出し元によって割り当てられた 1 つのバッファーですべてのデータが返されるように行われます。 pdwBufferSize が 0 の場合は NULL に設定されます。
戻り値
関数が成功すると、ERROR_SUCCESSが返されます。
関数が失敗した場合、戻り値は システム エラー コード または PDH エラー コードです。 使用できる値を次に示します。
リターン コード | 説明 |
---|---|
|
パラメーターが無効であるか、正しく書式設定されていません。 たとえば、一部のリリースでは、入力の指定されたサイズが 0 より大きく、必要なサイズより小さい場合に、このエラーが発生する可能性があります。 |
|
カウンター ハンドルが無効です。 |
|
lpBuffer バッファーが小さすぎてカウンター情報を保持できません。 この戻り値は、 入力時に pdwBufferSize が 0 の場合に予期されます。 入力時に指定したサイズが 0 より大きく、必要なサイズより小さい場合は、返されたサイズに依存してバッファーを再割り当てしないでください。 |
注釈
この関数は 2 回呼び出す必要があります。最初に必要なバッファー サイズを取得し ( lpBuffer を NULL に設定し、 pdwBufferSize を 0 に設定)、2 回目にデータを取得します。
注意
pdh.h ヘッダーは、PDhGetCounterInfo をエイリアスとして定義します。このエイリアスは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | pdh.h |
Library | Pdh.lib |
[DLL] | Pdh.dll |