структура PDH_BROWSE_DLG_CONFIG_W (pdh.h)
Структура PDH_BROWSE_DLG_CONFIG используется функцией PdhBrowseCounters для настройки диалогового окна Просмотр счетчиков производительности .
Синтаксис
typedef struct _BrowseDlgConfig_W {
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;
LPWSTR szDataSource;
LPWSTR szReturnPathBuffer;
DWORD cchReturnPathLength;
CounterPathCallBack pCallBack;
DWORD_PTR dwCallBackArg;
PDH_STATUS CallBackStatus;
DWORD dwDefaultDetailLevel;
LPWSTR szDialogBoxCaption;
} PDH_BROWSE_DLG_CONFIG_W, *PPDH_BROWSE_DLG_CONFIG_W;
Члены
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, владельцем является рабочий стол.
szDataSource
Указатель на строку, завершающуюся значением NULL, которая указывает имя файла журнала, из которого извлекается список счетчиков. Если значение РАВНО NULL, список счетчиков извлекается с локального компьютера (или с удаленного компьютера, если он указан).
szReturnPathBuffer
Указатель на MULTI_SZ, содержащий выбранные пути счетчиков.
Если параметр bInitializePath имеет значение TRUE, этот член можно использовать для указания пути счетчика, компоненты которого используются для выделения записей в списках компьютеров, объектов, счетчиков и экземпляров при первом отображении диалогового окна.
cchReturnPathLength
Размер буфера szReturnPathBuffer в TCHAR. Если функция обратного вызова перераспределяет новый буфер, она также должна обновить это значение.
pCallBack
Указатель на функцию обратного вызова, которая обрабатывает выбор пользователя. Дополнительные сведения см. в разделе CounterPathCallBack.
dwCallBackArg
Определенное вызывающей стороны значение, передаваемое функции обратного вызова.
CallBackStatus
При входе в функцию обратного вызова этот элемент содержит состояние буфера путей. При выходе функция обратного вызова задает значение состояния, полученное в результате обработки.
Если буфер слишком мал для загрузки текущего выделения, диалоговое окно задает для этого значения значение PDH_MORE_DATA. Если это значение равно ERROR_SUCCESS, то член szReturnPathBuffer содержит допустимый путь счетчика или список путей счетчика.
Если функция обратного вызова перераспределяет новый буфер, ей следует задать для этого члена значение PDH_RETRY чтобы диалоговое окно попыталось загрузить буфер с выбранными путями и снова вызвать функцию обратного вызова.
Если произошла другая ошибка, функция обратного вызова должна вернуть соответствующее значение состояния ошибки PDH.
dwDefaultDetailLevel
Уровень детализации по умолчанию отображается в списке Уровень детализации , если параметр bHideDetailBox имеет значение FALSE. Если параметр bHideDetailBox имеет значение TRUE, диалоговое окно использует это значение для фильтрации отображаемых счетчиков производительности и объектов. Можно указать одно из следующих значений.
szDialogBoxCaption
Указатель на строку, заканчивающуюся null, которая указывает необязательный подпись для отображения на панели подпись диалогового окна. Если этот элемент имеет значение NULL, подпись будет просмотр счетчиков производительности.
Комментарии
При каждом нажатии кнопки Добавить буфер szReturnPathBuffer содержит выбранный счетчик и вызывается функция обратного вызова pCallBack . Функция обратного вызова должна вызывать функцию PdhAddCounter для каждого счетчика в буфере.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Верхняя часть | pdh.h |