PdhMakeCounterPathA 関数 (pdh.h)

PDH_COUNTER_PATH_ELEMENTS 構造体で指定されたメンバーを使用して、完全なカウンター パスを作成します。

構文

PDH_FUNCTION PdhMakeCounterPathA(
  [in]      PPDH_COUNTER_PATH_ELEMENTS_A pCounterPathElements,
  [out]     LPSTR                        szFullPathBuffer,
  [in, out] LPDWORD                      pcchBufferSize,
  [in]      DWORD                        dwFlags
);

パラメーター

[in] pCounterPathElements

パス 構成するために使用されるメンバーを含むPDH_COUNTER_PATH_ELEMENTS構造体。 szObjectName メンバーと szCounterName メンバーのみが必要であり、他のメンバーは省略可能です。

インスタンス名メンバーが NULL の場合、パスにはインスタンス参照が含まれません。 szParentInstance メンバーと dwInstanceIndex メンバーは無視されます。

[out] szFullPathBuffer

null で終わるカウンター パスを受け取る呼び出し元によって割り当てられたバッファー。 カウンター パスの最大長はPDH_MAX_COUNTER_PATH。 pcchBufferSize が 0 の場合は NULL に設定します。

[in, out] pcchBufferSize

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

[in] dwFlags

入力カウンター値と出力カウンター値の形式。 次のいずれかの値を指定できます。

意味
PDH_PATH_WBEM_RESULT
PDH パスを WMI クラスとプロパティ名の形式に変換します。
PDH_PATH_WBEM_INPUT
WMI クラスとプロパティ名を PDH パスに変換します。
0
PDH 形式のパス (たとえば、\\computer\object(parent/instance#index)\counter) を返します。

戻り値

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

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

リターン コード 説明
PDH_MORE_DATA
szFullPathBuffer バッファーが小さすぎてカウンター名を含められません。 この戻り値は、 入力時に pcchBufferSize がゼロの場合に想定されます。 入力時に指定したサイズが 0 より大きく、必要なサイズより小さい場合は、返されたサイズに依存してバッファーを再割り当てしないでください。
PDH_INVALID_ARGUMENT
パラメーターが無効であるか、正しく書式設定されていません。 たとえば、一部のリリースでは、入力の指定されたサイズが 0 より大きく、必要なサイズより小さい場合に、このエラーが発生する可能性があります。

注釈

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

注意

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

要件

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

こちらもご覧ください

PDH_COUNTER_PATH_ELEMENTS

PdhParseCounterPath