PDH_BROWSE_DLG_CONFIG_A構造体 (pdh.h)

PDH_BROWSE_DLG_CONFIG構造体は、PdhBrowseCounters 関数によって使用され、[パフォーマンス カウンターの参照] ダイアログ ボックスを構成します。

構文

typedef struct _BrowseDlgConfig_A {
  DWORD               bIncludeInstanceIndex : 1;
  DWORD               bSingleCounterPerAdd : 1;
  DWORD               bSingleCounterPerDialog : 1;
  DWORD               bLocalCountersOnly : 1;
  DWORD               bWildCardInstances : 1;
  DWORD               bHideDetailBox : 1;
  DWORD               bInitializePath : 1;
  DWORD               bDisableMachineSelection : 1;
  DWORD               bIncludeCostlyObjects : 1;
  DWORD               bShowObjectBrowser : 1;
  DWORD               bReserved : 22;
  HWND                hWndOwner;
  LPSTR               szDataSource;
  LPSTR               szReturnPathBuffer;
  DWORD               cchReturnPathLength;
  CounterPathCallBack pCallBack;
  DWORD_PTR           dwCallBackArg;
  PDH_STATUS          CallBackStatus;
  DWORD               dwDefaultDetailLevel;
  LPSTR               szDialogBoxCaption;
} PDH_BROWSE_DLG_CONFIG_A, *PPDH_BROWSE_DLG_CONFIG_A;

メンバー

bIncludeInstanceIndex

このフラグが TRUE の場合、ダイアログ ボックスには重複するインスタンス名のインデックス番号が含まれます。 たとえば、cmd インスタンスが 2 つある場合、インスタンスリストには cmd と cmd#1 が含まれます。 このフラグが FALSE の場合、重複するインスタンス名にはインデックス番号は含まれません。

bSingleCounterPerAdd

このフラグが TRUE の場合、ダイアログはカウンターを 1 つだけ返します。 このフラグが FALSE の場合、ダイアログは複数の選択を返すことができます。ワイルドカードの選択が許可されます。 選択したカウンターは、MULTI_SZ文字列として返されます。

bSingleCounterPerDialog

このフラグが TRUE の場合、ダイアログ ボックスでは [OK] ボタンと [キャンセル] ボタンが使用されます。 ユーザーがいずれかのボタンをクリックすると、ダイアログが返されます。 このフラグが FALSE の場合、ダイアログ ボックスでは [追加] ボタンと [閉じる] ボタンが使用されます。 ユーザーが [閉じる] ボタンをクリックすると、ダイアログ ボックスが閉じます。 [追加] ボタンは複数回クリックできます。 [追加] ボタンをクリックすると、以前に選択したアイテムが現在選択されているアイテムで上書きされます。

bLocalCountersOnly

このフラグが TRUE の場合、ダイアログ ボックスでは、ローカル コンピューターからのみカウンターを選択できます (パスにはコンピューター名は含まれません)。 このフラグが FALSE の場合、ユーザーはカウンターを選択するコンピューターを指定できます。 ユーザーが [ ローカル コンピューター カウンターを使用する] を選択しない限り、コンピューター名の前にカウンター パスが付きます。

bWildCardInstances

このフラグが TRUE で 、ユーザーが [すべてのインスタンス] を選択した場合、カウンター パスにはインスタンス フィールドのワイルドカード文字が含まれます。

このフラグが FALSE で、ユーザーが [すべてのインスタンス] を選択すると、そのオブジェクトに対して現在見つかったすべてのインスタンスがMULTI_SZ文字列で返されます。

bHideDetailBox

このフラグが TRUE の場合、ダイアログ ボックスから 詳細レベル が削除されるため、ユーザーはダイアログ ボックスに表示されるカウンターの詳細レベルを変更できません。 詳細レベルは dwDefaultDetailLevel メンバーの値に固定されます。

このフラグが FALSE の場合、ダイアログ ボックスに 詳細レベル が表示され、表示されるカウンターの詳細レベルをユーザーが変更できるようになります。

表示されるカウンターは、詳細レベルが現在の詳細レベルの選択以下のカウンターであることに注意してください。 ウィザードの詳細レベルを選択すると、すべてのカウンターとオブジェクトが表示されます。

bInitializePath

このフラグが TRUE の場合、コンピューターで指定された既定のカウンターとオブジェクトを使用する代わりに、ダイアログ ボックスが最初に表示されるときに、ダイアログで szReturnPathBuffer で指定されたカウンターとオブジェクトが強調表示されます。

このフラグが FALSE の場合、コンピューターから返される既定のカウンターとオブジェクト情報を使用して、最初のカウンターとオブジェクトが選択されます。

bDisableMachineSelection

このフラグが TRUE の場合、ユーザーは [コンピューター からカウンターを選択] からコンピューターを選択できません。

このフラグが FALSE の場合、ユーザーは [コンピューター からカウンターを選択] からコンピューターを選択できます。 これが既定値です。 PdhConnectMachine を呼び出して他のコンピューターに最初に接続しない限り、一覧にはローカル コンピューターのみが含まれます。

bIncludeCostlyObjects

このフラグが TRUE の場合、カウンター リストにはコストの高いデータも含まれます。つまり、比較的大量のプロセッサ時間またはメモリ オーバーヘッドを収集する必要があるデータです。

このフラグが FALSE の場合、一覧にはコストのかかるカウンターは含まれません。 これが既定値です。

bShowObjectBrowser

このフラグが TRUE の場合、ダイアログにはパフォーマンス オブジェクトのみが一覧表示されます。 ユーザーがオブジェクトを選択すると、オブジェクトが複数のインスタンス オブジェクトである場合、ダイアログは、インスタンス名とカウンターのオブジェクトとワイルドカード文字を含むカウンター パスを返します。 たとえば、"Process" オブジェクトが選択されている場合、ダイアログは文字列 "\Process(*)*" を返します。 オブジェクトが単一のインスタンス オブジェクトの場合、パスにはカウンター専用のワイルドカード文字が含まれます。 たとえば、"\System*" などです。 その後、 PdhExpandWildCardPath にパスを渡して、オブジェクトの実際のパスの一覧を取得できます。

bReserved

hWndOwner

ダイアログを所有するウィンドウのハンドル。 NULL の場合、所有者はデスクトップです。

szDataSource

カウンターの一覧の取得元となるログ ファイルの名前を指定する null で終わる文字列へのポインター。 NULL の場合、カウンターの一覧はローカル コンピューター (または指定されている場合はリモート コンピューター) から取得されます。

szReturnPathBuffer

選択したカウンター パスを含むMULTI_SZへのポインター。

bInitializePathTRUE の場合、このメンバーを使用して、ダイアログが最初に表示されるときに、コンピューター、オブジェクト、カウンター、およびインスタンス リストのエントリを強調表示するためにコンポーネントを使用するカウンター パスを指定できます。

cchReturnPathLength

TCHAR での szReturnPathBuffer バッファーのサイズ。 コールバック関数が新しいバッファーを再割り当てする場合は、この値も更新する必要があります。

pCallBack

ユーザーの選択を処理するコールバック関数へのポインター。 詳細については、「 CounterPathCallBack」を参照してください。

dwCallBackArg

コールバック関数に渡される呼び出し元定義の値。

CallBackStatus

コールバック関数へのエントリでは、このメンバーにはパス バッファーの状態が含まれます。 終了時に、コールバック関数は処理の結果として状態値を設定します。

バッファーが小さすぎて現在の選択範囲を読み込めない場合、ダイアログはこの値をPDH_MORE_DATAに設定します。 この値がERROR_SUCCESSの場合、 szReturnPathBuffer メンバーには有効なカウンター パスまたはカウンター パス リストが含まれます。

コールバック関数が新しいバッファーを再割り当てする場合は、このメンバーを PDH_RETRY に設定して、ダイアログで選択したパスを含むバッファーの読み込みを試み、コールバック関数を再度呼び出すようにする必要があります。

他のエラーが発生した場合、コールバック関数は適切な PDH エラー状態値を返す必要があります。

dwDefaultDetailLevel

bHideDetailBoxFALSE の場合に詳細レベルの一覧に表示される既定の詳細レベル。 bHideDetailBoxTRUE の場合、ダイアログはこの値を使用して、表示されるパフォーマンス カウンターとオブジェクトをフィルター処理します。 次のいずれかの値を指定できます。

詳細レベル 意味
PERF_DETAIL_NOVICE
初心者のユーザーは、カウンター データを理解できます。
PERF_DETAIL_ADVANCED
カウンター データは、上級ユーザー向けに提供されます。
PERF_DETAIL_EXPERT
カウンター データは、エキスパート ユーザー向けに提供されます。
PERF_DETAIL_WIZARD
カウンター データは、システム デザイナー向けに提供されます。

szDialogBoxCaption

ダイアログ ボックスのキャプション バーに表示する省略可能なキャプションを指定する null で終わる文字列へのポインター。 このメンバーが NULL の場合、キャプションは [パフォーマンス カウンターの参照] になります。

注釈

[追加] ボタンがクリックされるたびに、szReturnPathBuffer バッファーに選択したカウンターが含まれており、pCallBack コールバック関数が呼び出されます。 コールバック関数は、バッファー内の各カウンターに対して PdhAddCounter 関数を呼び出す必要があります。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
Header pdh.h

こちらもご覧ください

CounterPathCallBack

PdhAddCounter

PdhBrowseCounters