PdhGetRawCounterArrayW 関数 (pdh.h)

指定したカウンターから生の値の配列を返します。 インスタンス名のワイルドカード文字を含むカウンターの生カウンター値を取得する場合は、この関数を使用します。

構文

PDH_FUNCTION PdhGetRawCounterArrayW(
  [in]      PDH_HCOUNTER            hCounter,
  [in, out] LPDWORD                 lpdwBufferSize,
  [out]     LPDWORD                 lpdwItemCount,
  [out]     PPDH_RAW_COUNTER_ITEM_W ItemBuffer
);

パラメーター

[in] hCounter

現在の生インスタンス値を取得するカウンターのハンドル。 PdhAddCounter 関数は、このハンドルを返します。

[in, out] lpdwBufferSize

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

[out] lpdwItemCount

ItemBuffer バッファー内の生カウンター値の数。

[out] ItemBuffer

PDH_RAW_COUNTER_ITEM構造体の配列を受け取る呼び出し元によって割り当てられたバッファー。構造体には、生のインスタンス カウンター値が含まれています。 lpdwBufferSize が 0 の場合は NULL に設定します。

戻り値

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

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

リターン コード 説明
PDH_MORE_DATA
ItemBuffer バッファーは、オブジェクト名を格納するのに十分な大きさではありません。 この戻り値は、 入力時に lpdwBufferSize が 0 の場合に予期されます。 入力で指定したサイズが 0 より大きく、必要なサイズより小さい場合は、返されるサイズに依存してバッファーを再割り当てしないでください。
PDH_INVALID_ARGUMENT
パラメーターが無効であるか、正しく書式設定されていません。 たとえば、一部のリリースでは、入力時に指定されたサイズが 0 より大きく、必要なサイズより小さい場合に、このエラーが発生する可能性があります。
PDH_INVALID_HANDLE
カウンター ハンドルが無効です。

注釈

この関数は 2 回呼び出す必要があります。最初に必要なバッファー サイズ ( ItemBufferNULL に、 lpdwBufferSize を 0 に設定) を取得し、2 回目にデータを取得します。

カウンターのデータは、 PdhGetRawCounterArray の呼び出し中にロックされ、呼び出しの処理中に変更が行われるのを防ぎます。

注意

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

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー pdh.h
Library Pdh.lib
[DLL] Pdh.dll

こちらもご覧ください

PDH_RAW_COUNTER_ITEM

PdhCalculateCounterFromRawValue

PdhGetFormattedCounterArray

PdhGetFormattedCounterValue