Функция TdhGetPropertySize (tdh.h)
Извлекает размер одного или нескольких значений свойств в данных события.
Синтаксис
TDHSTATUS TdhGetPropertySize(
[in] PEVENT_RECORD pEvent,
[in] ULONG TdhContextCount,
[in] PTDH_CONTEXT pTdhContext,
[in] ULONG PropertyDataCount,
[in] PPROPERTY_DATA_DESCRIPTOR pPropertyData,
[out] ULONG *pPropertySize
);
Параметры
[in] pEvent
Запись события, переданная обратному вызову EventRecordCallback . Дополнительные сведения см. в разделе структура EVENT_RECORD .
[in] TdhContextCount
Количество элементов в pTdhContext.
[in] pTdhContext
Массив значений контекста только для событий WPP или классической трассировки событий Windows; в противном случае — значение NULL. Дополнительные сведения см. в разделе структура TDH_CONTEXT . Массив не должен содержать повторяющиеся типы контекста.
[in] PropertyDataCount
Количество структур дескриптора данных в pPropertyData.
[in] pPropertyData
Массив PROPERTY_DATA_DESCRIPTOR структур, определяющих свойство, размер которого требуется извлечь.
Этот же массив можно передать в функцию TdhGetProperty для получения данных свойства.
При получении размера свойства, не являющегося членом структуры, можно указать один дескриптор данных. При получении размера свойства, являющегося членом структуры, укажите массив из двух дескрипторов данных (структуры не могут содержать другие структуры или ссылаться на них). Дополнительные сведения об указании этого параметра см. в примере кода ниже.
[out] pPropertySize
Размер свойства в байтах. Используйте это значение для выделения буфера, переданного в параметре pBuffer функции TdhGetProperty .
Возвращаемое значение
В случае успешного выполнения возвращает ERROR_SUCCESS. В противном случае эта функция возвращает один из следующих кодов возврата в дополнение к другим.
Код возврата | Описание |
---|---|
|
Схема для события не найдена или указанная карта не найдена.
Если для определения события использовался mof-класс, TDH ищет схему в репозитории WMI. Если вы использовали манифест для определения события, TDH будет выполнять поиск в ресурсах поставщика. При использовании манифеста атрибут resourceFileName элемента поставщика определяет расположение, в котором TDH ожидает найти ресурсы. |
|
Один или несколько параметров являются недопустимыми. |
|
Атрибут resourceFileName в манифесте содержит расположение двоичного файла поставщика. При регистрации манифеста расположение записывается в реестр. TDH не удалось найти двоичный файл на основе зарегистрированного расположения. |
|
Служба WMI недоступна. |
Комментарии
Если событие является событием WPP или классическим событием ETW, можно указать контекстные сведения, которые используются для анализа сведений о событии. Событие является событием WPP, если флаг EVENT_HEADER_FLAG_TRACE_MESSAGE установлен в элементе FlagsEVENT_HEADER (см. элемент EventHeaderEVENT_RECORD). Событие является устаревшим событием трассировки событий Windows, если установлен флаг EVENT_HEADER_FLAG_CLASSIC_HEADER.
Примеры
Пример вызова этой функции см. в разделе Использование TdhGetProperty для использования данных событий.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | tdh.h |
Библиотека | Tdh.lib |
DLL | Tdh.dll |