Функция PerfAddCounters (perflib.h)
Добавляет спецификации счетчика производительности в указанный запрос.
Синтаксис
ULONG PerfAddCounters(
[in] HANDLE hQuery,
[in, out] PPERF_COUNTER_IDENTIFIER pCounters,
DWORD cbCounters
);
Параметры
[in] hQuery
Дескриптор запроса, к которому требуется добавить спецификации счетчика производительности.
[in, out] pCounters
Указатель на спецификации счетчика производительности, которые требуется добавить.
cbCounters
Размер буфера, указанного параметром pCounters , в байтах.
Возвращаемое значение
Если функция выполняется успешно, она возвращает ERROR_SUCCESS.
Если функция завершается сбоем, возвращаемое значение представляет собой системный код ошибки.
Комментарии
Параметр pCounters должен указывать на последовательность PERF_COUNTER_IDENTIFIER блоков. Каждый PERF_COUNTER_IDENTIFIER блок состоит из PERF_COUNTER_IDENTIFIER структуры, за которой при необходимости следует строка имени экземпляра UTF-16LE, завершающаяся null, и заполнение, которое делает размер блока кратным 8 байтам.
Для каждого блока PERF_COUNTER_IDENTIFIER :
- Задайте для элемента CounterSetGuid структуры PERF_COUNTER_IDENTIFIER идентификатор набора счетчиков для запроса.
- Задайте для элемента Status структуры PERF_COUNTER_IDENTIFIER значение 0.
- Задайте размер элемента структуры PERF_COUNTER_IDENTIFIER размер блока PERF_COUNTER_IDENTIFIER в байтах, включая структуру PERF_COUNTER_IDENTIFIER, имя экземпляра и заполнение. Значение Size должно быть кратным 8.
- Задайте для элемента CounterId структуры PERF_COUNTER_IDENTIFIER идентификатор счетчика, который должен быть возвращен запросом. Чтобы вернуть все счетчики, задайте для CounterIdзначение PERF_WILDCARD_COUNTER.
- Задайте для элемента InstanceId структуры PERF_COUNTER_IDENTIFIER идентификатор экземпляра, который должен быть возвращен запросом. Если фильтрация по идентификатору экземпляра не требуется, задайте для параметра InstanceIdзначение PERF_WILDCARD_COUNTER.
- Задайте для элемента Index структуры PERF_COUNTER_IDENTIFIER значение 0.
- Задайте для зарезервированного элемента структуры PERF_COUNTER_IDENTIFIER значение 0.
- Включите имя экземпляра сразу после структуры PERF_COUNTER_IDENTIFIER .
- Если набор счетчиков является одним экземпляром, не устанавливайте имя экземпляра. В этом случае значение элемента Size структуры PERF_COUNTER_IDENTIFIER должно быть размером PERF_COUNTER_IDENTIFIER структуры.
- Если набор счетчиков является несколькими экземплярами, необходимо задать имя экземпляра. Если вы не хотите фильтровать спецификации счетчика производительности по имени экземпляра, используйте PERF_WILDCARD_INSTANCE в качестве имени экземпляра.
Требования
Минимальная версия клиента | Windows 10 версии 1607 [только классические приложения] |
Минимальная версия сервера | Windows Server 2016 [только классические приложения] |
Целевая платформа | Windows |
Header | perflib.h |
Библиотека | AdvAPI32.lib |
DLL | AdvAPI32.dll |