PdhEnumMachinesHW 関数 (pdh.h)

ログ ファイル内のカウンターに関連付けられているコンピューター名の一覧を返します。 コンピューター名は、クエリにカウンターを追加するとき、または PdhConnectMachine 関数を呼び出すときに指定されました。 一覧表示されているコンピューターには、オフラインまたはパフォーマンス データを返していないコンピューターに加えて、現在接続されているコンピューターとオンラインコンピューターが含まれます。

この関数は PdhEnumMachines 関数と同じですが、データ ソースへのハンドルの使用がサポートされている点が除きます。

構文

PDH_FUNCTION PdhEnumMachinesHW(
  [in]      PDH_HLOG hDataSource,
  [out]     PZZWSTR  mszMachineList,
  [in, out] LPDWORD  pcchBufferSize
);

パラメーター

[in] hDataSource

PdhBindInputDataSource 関数によって返されるデータ ソースへのハンドル。

[out] mszMachineList

コンピューター名を含む null で終わる文字列の一覧を受け取る呼び出し元によって割り当てられたバッファー。 リストは 2 つの null 終端文字で終わる。 pcchBufferLength が 0 の場合は NULL に設定します。

[in, out] pcchBufferSize

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

戻り値

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

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

リターン コード 説明
PDH_MORE_DATA
mszMachineNameList バッファーが小さすぎて、すべてのデータを格納できません。 この戻り値は、 入力時に pcchBufferLength が 0 の場合に想定されます。 入力時に指定したサイズが 0 より大きく、必要なサイズより小さい場合は、返されたサイズに依存してバッファーを再割り当てしないでください。
PDH_INVALID_ARGUMENT
パラメーターが無効です。 たとえば、一部のリリースでは、入力の指定されたサイズが 0 より大きく、必要なサイズより小さい場合に、このエラーが発生する可能性があります。

注釈

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

注意

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

要件

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

こちらもご覧ください

PdhBindInputDataSource

PdhConnectMachine