Функция PdhGetDefaultPerfCounterA (pdh.h)
Извлекает имя счетчика по умолчанию для указанного объекта. Это имя можно использовать для задания начального выбора счетчика в диалоговом окне Обзор счетчика.
Чтобы использовать дескриптора для источников данных, используйте функцию PdhGetDefaultPerfCounterH .
Синтаксис
PDH_FUNCTION PdhGetDefaultPerfCounterA(
[in] LPCSTR szDataSource,
[in] LPCSTR szMachineName,
[in] LPCSTR szObjectName,
[out] LPSTR szDefaultCounterName,
[in, out] LPDWORD pcchBufferSize
);
Параметры
[in] szDataSource
Должно иметь значение NULL.
Если указать файл журнала, szDefaultCounterNameбудет пустой строкой.
[in] szMachineName
Строка, завершающаяся значением NULL, указывающая имя компьютера, используемого для проверки имени объекта. Если значение РАВНО NULL, для проверки имени объекта используется локальный компьютер.
[in] szObjectName
Строка со значением NULL, указывающая имя объекта, имя счетчика по умолчанию которого требуется извлечь.
[out] szDefaultCounterName
Буфер, выделенный вызывающим объектом, который получает имя счетчика по умолчанию, завершающееся null. Установите значение NULL , если pcchBufferSize равно нулю.
[in, out] pcchBufferSize
Размер буфера szDefaultCounterName в TCHAR. Если значение равно нулю при входе, функция возвращает PDH_MORE_DATA и задает для этого параметра требуемый размер буфера. Если буфер больше требуемого размера, функция задает для этого параметра фактический размер используемого буфера. Если указанный размер входных данных больше нуля, но меньше требуемого размера, не следует полагаться на возвращаемый размер для перераспределения буфера.
Возвращаемое значение
Если функция выполняется успешно, она возвращает ERROR_SUCCESS.
Если функция завершается ошибкой, возвращаемым значением является системный код ошибки или код ошибки PDH. Ниже приведены возможные значения.
Код возврата | Описание |
---|---|
|
Буфер szDefaultCounterName слишком мал, чтобы содержать имя счетчика. Это возвращаемое значение ожидается, если pcchBufferSize равно нулю на входе. Если указанный размер входных данных больше нуля, но меньше требуемого размера, не следует полагаться на возвращаемый размер для перераспределения буфера. |
|
Недопустимый обязательный параметр. Например, в некоторых выпусках эта ошибка может возникнуть, если указанный размер входных данных больше нуля, но меньше требуемого размера. |
|
Не удается выделить память для выполнения функции. |
|
Указанный компьютер находится в автономном режиме или недоступен. |
|
Не удается прочитать или найти имя счетчика по умолчанию. |
|
Не удалось найти указанный объект. |
|
Объект не указал счетчик по умолчанию. |
Комментарии
Эту функцию следует вызывать дважды: первый раз, чтобы получить требуемый размер буфера (задайте для параметра szDefaultCounterNameзначение NULL , а pcchBufferSize — 0), а второй раз — для получения данных.
Примечание
Заголовок pdh.h определяет PdhGetDefaultPerfCounter как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | pdh.h |
Библиотека | Pdh.lib |
DLL | Pdh.dll |