Функция PdhAddEnglishCounterA (pdh.h)
Добавляет в запрос указанный нейтрализующий язык счетчик.
Синтаксис
PDH_FUNCTION PdhAddEnglishCounterA(
[in] PDH_HQUERY hQuery,
[in] LPCSTR szFullCounterPath,
[in] DWORD_PTR dwUserData,
[out] PDH_HCOUNTER *phCounter
);
Параметры
[in] hQuery
Обработайте запрос, к которому требуется добавить счетчик. Этот дескриптор возвращается функцией PdhOpenQuery.
[in] szFullCounterPath
Строка, завершающая значение NULL, содержащая путь счетчика. Дополнительные сведения о формате пути счетчика см. в разделе Указание пути счетчика. Максимальная длина пути счетчика составляет PDH_MAX_COUNTER_PATH.
[in] dwUserData
Определяемое пользователем значение. Это значение становится частью сведений о счетчике. Чтобы получить это значение позже, вызовите функцию PdhGetCounterInfo и перейдите к элементу dwQueryUserData структуры PDH_COUNTER_INFO.
[out] phCounter
Дескриптор счетчика, добавленного в запрос. Возможно, вам потребуется ссылаться на этот дескриптор в последующих вызовах.
Возвращаемое значение
Возвращает ERROR_SUCCESS, если функция выполнена успешно.
Если функция завершается ошибкой, возвращаемое значение представляет собой код ошибки системы или код ошибки PDH. Ниже приведены возможные значения.
Возвращаемый код | Описание |
---|---|
|
Путь счетчика не может быть проанализирован или интерпретирован. |
|
Не удалось найти указанный счетчик на компьютере или в файле журнала. |
|
Путь счетчика пуст. |
|
Путь не содержал имени компьютера, и функция не смогла получить имя локального компьютера. |
|
Не удалось найти указанный объект на компьютере или в файле журнала. |
|
Не удалось определить функцию вычисления, используемую для этого счетчика. |
|
Один или несколько аргументов недопустимы. |
|
Недопустимый дескриптор запроса. |
|
Не удалось выделить память, необходимую для выполнения функции. |
Замечания
Эта функция предоставляет нейтральный язык способ добавления счетчиков производительности в запрос. Напротив, необходимо локализовать путь счетчика, указанный в функции PdhAddCounter.
Если экземпляр счетчика указан, который еще не существует, PdhAddEnglishCounter не сообщает об ошибке. Вместо этого он возвращает ERROR_SUCCESS. Причина этого поведения заключается в том, что неизвестно, был ли указан существующий экземпляр счетчика или будет ли он существовать, но еще не создан.
Чтобы удалить счетчик из запроса, используйте функцию PdhRemoveCounter.
- Создание запроса
- Используйте PdhAddEnglishCounter со строкой, содержащей подстановочные знаки
- Используйте PdhGetCounterInfo в дескрипторе счетчика, возвращаемом PdhAddEnglishCounter, чтобы получить локализованный полный путь (szFullPath.) Эта строка по-прежнему содержит подстановочные знаки, но теперь локализованы части, не являющиеся подстановочными знаками.
- Используйте PdhExpandWildCardPath для расширения подстановочных знаков.
- Используйте PdhAddCounter на каждом из полученных путей
Заметка
Заголовок pdh.h определяет PdhAddEnglishCounter как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2008 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | pdh.h |
библиотеки |
Pdh.lib |
DLL | Pdh.dll |