Формат данных производительности
Формат данных, получаемых функцией RegQueryValueEx , начинается со структуры заголовков фиксированной длины , PERF_DATA_BLOCK. Структура PERF_DATA_BLOCK описывает систему и данные о производительности. За структурой PERF_DATA_BLOCK следует переменное число элементов данных объекта переменной длины. Заголовок каждого элемента объекта содержит смещение следующего элемента объекта в списке. На следующей схеме показана базовая структура данных о производительности.
Существует два формата для элементов данных объекта: один поддерживает несколько экземпляров, а другой не поддерживает несколько экземпляров.
Каждый блок элемента данных объекта содержит PERF_OBJECT_TYPE структуру, которая описывает данные о производительности объекта. За структурой PERF_OBJECT_TYPE следует список PERF_COUNTER_DEFINITION структур, по одной для каждого счетчика, определенного для объекта . Для объекта с одним экземпляром за списком PERF_COUNTER_DEFINITION структур следует одна PERF_COUNTER_BLOCK структура, за которой следуют данные счетчика. Каждая структура PERF_COUNTER_DEFINITION содержит смещение от начала структуры PERF_COUNTER_BLOCK к соответствующим данным счетчика. На следующей схеме показана структура объекта производительности, который не поддерживает несколько экземпляров.
Для типа объекта, поддерживающего несколько экземпляров, за списком PERF_COUNTER_DEFINITION структур следует список блоков сведений об экземпляре (по одному для каждого экземпляра). Каждый блок сведений об экземпляре содержит структуру PERF_INSTANCE_DEFINITION , имя экземпляра и структуру PERF_COUNTER_BLOCK . На следующей схеме показана структура объекта производительности, который поддерживает два экземпляра.
Пример использования см. в разделе Отображение имен объектов, экземпляров и счетчиков.