次の方法で共有


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

説明テキストを取得するかどうかを決定します。 このパラメーターを TRUE設定すると、カウンターの explain テキストが取得されます。 このパラメーターを FALSEに設定すると、返されるバッファー内のフィールドは NULL

[in, out] pdwBufferSize

lpBuffer バッファーのサイズ (バイト単位)。 入力時に 0 の場合、関数はPDH_MORE_DATAを返し、このパラメーターを必要なバッファー サイズに設定します。 バッファーが必要なサイズより大きい場合、関数はこのパラメーターを使用したバッファーの実際のサイズに設定します。 入力で指定したサイズが 0 より大きく、必要なサイズより小さい場合は、返されたサイズに依存してバッファーを再割り当てしないでください。

[out] lpBuffer

PDH_COUNTER_INFO 構造体を受け取る呼び出し元によって割り当てられたバッファー。 構造体の固定形式部分の末尾に文字列データが追加されるため、構造体は可変長です。 これは、すべてのデータが呼び出し元によって割り当てられた単一のバッファーで返されるように行われます。 pdwBufferSize が 0 の場合 NULL を に設定します。

戻り値

関数が成功すると、ERROR_SUCCESSが返されます。

関数が失敗した場合、戻り値は システム エラー コード または PDH エラー コードです。 使用できる値を次に示します。

リターン コード 形容
PDH_INVALID_ARGUMENT
パラメーターが無効であるか、正しく書式設定されていません。 たとえば、一部のリリースでは、入力で指定されたサイズが 0 より大きく、必要なサイズより小さい場合、このエラーが発生する可能性があります。
PDH_INVALID_HANDLE
カウンター ハンドルが無効です。
PDH_MORE_DATA
lpBuffer バッファー が小さすぎてカウンター情報を保持できません。 この戻り値は、pdwBufferSize が入力時に 0 の場合に予期されます。 入力で指定したサイズが 0 より大きく、必要なサイズより小さい場合は、返されたサイズに依存してバッファーを再割り当てしないでください。

備考

この関数を 2 回呼び出す必要があります。必要なバッファー サイズを取得する (lpBuffer null を し、pdwBufferSize を 0 に ) し、2 回目にデータを取得します。

手記

pdh.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして PdhGetCounterInfo を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー pdh.h
ライブラリ Pdh.lib
DLL Pdh.dll

関連項目

PDH_COUNTER_INFO