英語で読む

次の方法で共有


PdhParseCounterPathA 関数 (pdh.h)

カウンター パスの要素を解析し、結果を PDH_COUNTER_PATH_ELEMENTS 構造体に格納します。

構文

PDH_FUNCTION PdhParseCounterPathA(
  [in]      LPCSTR                       szFullPathBuffer,
  [out]     PPDH_COUNTER_PATH_ELEMENTS_A pCounterPathElements,
  [in, out] LPDWORD                      pdwBufferSize,
            DWORD                        dwFlags
);

パラメーター

[in] szFullPathBuffer

解析するカウンター パスを含む Null で終わる文字列。 カウンター パスの最大長はPDH_MAX_COUNTER_PATH。

[out] pCounterPathElements

PDH_COUNTER_PATH_ELEMENTS構造体を受け取る呼び出し元によって割り当てられたバッファー。 構造体には、 szFullPathBuffer パラメーターによって参照されるパスの個々の文字列要素へのポインターが含まれています。 関数は、 PDH_COUNTER_PATH_ELEMENTS 構造体の末尾に文字列を追加します。 割り当てられたバッファーは、構造体と文字列に対して十分な大きさにする必要があります。 pdwBufferSize が 0 の場合は NULL に設定します。

[in, out] pdwBufferSize

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

dwFlags

予約済み。 ゼロを指定してください。

戻り値

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

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

リターン コード 説明
PDH_INVALID_ARGUMENT
パラメーターが無効です。
PDH_MORE_DATA
pCounterPathElements バッファーが小さすぎてパス要素を含められません。 この戻り値は、 入力時に pdwBufferSize が 0 の場合に予期されます。 入力で指定したサイズが 0 より大きく、必要なサイズより小さい場合は、返されるサイズに依存してバッファーを再割り当てしないでください。
PDH_INVALID_PATH
パスの書式が正しく設定されていないため、解析できません。 たとえば、一部のリリースでは、入力時に指定されたサイズが 0 より大きく、必要なサイズより小さい場合に、このエラーが発生する可能性があります。
PDH_MEMORY_ALLOCATION_FAILURE
関数を完了するためにメモリを割り当てられません。

注釈

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

注意

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

要件

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

こちらもご覧ください

PDH_COUNTER_PATH_ELEMENTS

PdhMakeCounterPath