PerfEnumerateCounterSetInstances 関数 (perflib.h)
で設定されたカウンターのアクティブなインスタンスの名前と識別子を取得します。
指定されたシステム。
構文
ULONG PerfEnumerateCounterSetInstances(
[in, optional] LPCWSTR szMachine,
[in] LPCGUID pCounterSetId,
[out, optional] PPERF_INSTANCE_HEADER pInstances,
DWORD cbInstances,
[out] LPDWORD pcbInstancesActual
);
パラメーター
[in, optional] szMachine
pCounterSet パラメーターが指定するカウンター セットのアクティブなインスタンスに関する情報を取得するコンピューターの名前。 NULL の場合、関数はローカル コンピューターに対して指定されたカウンター セットのアクティブなインスタンスに関する情報を取得します。
[in] pCounterSetId
アクティブなインスタンスに関する情報を取得するカウンター セットのカウンター セット識別子。
[out, optional] pInstances
cbInstances パラメーターが指定するデータ量を受け取るのに十分な大きさのバッファーへのポインター。 たぶん
cbInstances が 0 の場合は NULL。
cbInstances
pInstances パラメーターが指定するバッファーのサイズ (バイト単位)。
[out] pcbInstancesActual
アクティブなインスタンスに関する情報を取得するために実際に必要なバッファーのサイズ。 意味は、関数の値によって異なります
返します。
関数の戻り値 | pcbInstancesActual の意味 |
---|---|
ERROR_SUCCESS | の数 pInstances が指定したバッファーに関数が格納した、指定したカウンター セットのアクティブ インスタンスに関する情報のバイト数。 |
ERROR_NOT_ENOUGH_MEMORY | 次に、 指定したマシンで設定されたカウンターのアクティブなインスタンスに関する情報を格納するために必要なバッファーのサイズ (バイト単位)。 バッファーを必要に応じて拡大します。 size し、関数をもう一度呼び出します。 |
その他 | 値は未定義であり、使用しないでください。 |
戻り値
リターン コード | 説明 |
---|---|
|
関数は、 pInstances が指定したバッファーに、カウンター セットのアクティブなインスタンスに関するすべての情報を正常に格納しました。 pcbInstancesActual が指す値は、バッファーに実際に格納されている情報の量をバイト単位で示します。 |
|
pInstances が指定したバッファーは、カウンター セットのアクティブなインスタンスに関するすべての情報を格納するのに十分な大きさではありません。 pcbInstancesActual が指す値は、すべての情報を格納するために必要なバッファーのサイズを示します。 バッファーを必要に応じて拡大します。 size し、関数をもう一度呼び出します。 |
その他の種類のエラーの場合、戻り値は システム エラー コードです。
注釈
指定したカウンター セットのアクティブなインスタンスに関する情報は、 pInstance が PERF_INSTANCE_HEADER ブロックのシーケンスとして指定するバッファー に 書き込まれます。 のサイズ (バイト単位)
ブロックのシーケンスは pcbInstancesActual に書き込まれます。 各 PERF_INSTANCE_HEADER ブロックは、
PERF_INSTANCE_HEADER構造体の直後に null で終わる UTF-16LE
インスタンス名の後にパディングが続き、 のサイズが
PERF_INSTANCE_HEADER ブロックは 8 バイトの倍数です。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10バージョン 1607 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2016 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | perflib.h |
Library | AdvAPI32.lib |
[DLL] | AdvAPI32.dll |