共用方式為


PDH_BROWSE_DLG_CONFIG_HA結構 (pdh.h)

PdhBrowseCountersH 函式會使用 PDH_BROWSE_DLG_CONFIG_H 結構來設定 流覽性能計數器 對話框。

語法

typedef struct _BrowseDlgConfig_HA {
  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;
  PDH_HLOG            hDataSource;
  LPSTR               szReturnPathBuffer;
  DWORD               cchReturnPathLength;
  CounterPathCallBack pCallBack;
  DWORD_PTR           dwCallBackArg;
  PDH_STATUS          CallBackStatus;
  DWORD               dwDefaultDetailLevel;
  LPSTR               szDialogBoxCaption;
} PDH_BROWSE_DLG_CONFIG_HA, *PPDH_BROWSE_DLG_CONFIG_HA;

成員

bIncludeInstanceIndex

如果此旗標 TRUE,則對話框會包含重複實例名稱的索引編號。 例如,如果有兩個 Cmd 實例,則實例清單會包含 cmd 和 cmd#1。 如果這個旗標 FALSE,則重複的實例名稱將不會包含索引編號。

bSingleCounterPerAdd

如果此旗標 TRUE,則對話框只會傳回一個計數器。 如果這個旗標 FALSE,對話框可以傳回多個選取專案,而且允許通配符選取。 選取的計數器會以MULTI_SZ字串傳回。

bSingleCounterPerDialog

如果此旗標 TRUE,對話框會使用 [確定] 和 [取消] 按鈕。 當使用者按兩下任一按鈕時,對話框會傳回。 如果此旗標 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,則擁有者是桌面。

hDataSource

PdhBindInputDataSource 函式所傳回數據源的句柄。

szReturnPathBuffer

包含所選計數器路徑之MULTI_SZ的指標。

如果 bInitializePathTRUE,您可以使用這個成員來指定計數器路徑,其元件用來在對話框第一次顯示時反白顯示計算機、物件、計數器和實例清單中的專案。

cchReturnPathLength

TCHAR中,szReturnPathBuffer 緩衝區的大小。 如果回調函式重新配置新的緩衝區,它也必須更新此值。

pCallBack

處理用戶選取範圍的回調函式指標。 如需詳細資訊,請參閱 CounterPathCallBack

dwCallBackArg

傳遞至回調函式的呼叫端定義值。

CallBackStatus

在回呼函式的專案上,這個成員包含路徑緩衝區的狀態。 結束時,回呼函式會設定處理所產生的狀態值。

如果緩衝區太小而無法載入目前的選取範圍,對話框會將此值設定為PDH_MORE_DATA。 如果此值是ERROR_SUCCESS,則 szReturnPathBuffer 成員包含有效的計數器路徑或計數器路徑清單。

如果回調函式重新配置新的緩衝區,它應該將此成員設定為 PDH_RETRY,讓對話框嘗試使用選取的路徑載入緩衝區,並再次呼叫回調函式。

如果發生其他錯誤,則回呼函式應該會傳回適當的 PDH 錯誤狀態值。

dwDefaultDetailLevel

如果 bHideDetailBox FALSE,則預設詳細數據層級會顯示在 [詳細數據層級] 清單中。 如果 bHideDetailBoxTRUE,對話方塊會使用此值來篩選顯示的性能計數器和物件。 您可以指定下列其中一個值:

詳細數據層級 意義
PERF_DETAIL_NOVICE
新手使用者可以瞭解計數器數據。
PERF_DETAIL_ADVANCED
計數器數據會提供給進階使用者。
PERF_DETAIL_EXPERT
計數器數據會提供給專家使用者。
PERF_DETAIL_WIZARD
系統設計工具會提供計數器數據。

szDialogBoxCaption

null終止字串的指標,指定要顯示在對話框標題列中的選擇性標題。 如果這個成員 NULL,標題將會 瀏覽效能計數器

言論

每次按兩下 [新增] 按鈕 時,szReturnPathBuffer 緩衝區包含選取的計數器,並呼叫 pCallBack 回呼函式 pCallBack。 回呼函式應該針對緩衝區中的每個計數器呼叫 PdhAddCounter 函式。

注意

pdh.h 標頭會將PDH_BROWSE_DLG_CONFIG_H定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
標頭 pdh.h

另請參閱

CounterPathCallBack

PdhAddCounter

PdhBindInputDataSource

PdhBrowseCountersH