Поделиться через


структура WNODE_EVENT_ITEM (wmistr.h)

Структура WNODE_EVENT_ITEM содержит данные, созданные драйвером для события.

Синтаксис

typedef struct tagWNODE_EVENT_ITEM {
  struct _WNODE_HEADER WnodeHeader;
} WNODE_EVENT_ITEM, *PWNODE_EVENT_ITEM;

Члены

WnodeHeader

Задает структуру WNODE_HEADER , содержащую сведения, общие для всех структур WNODE_XXX , такие как размер буфера, GUID, представляющий блок данных, связанный с запросом, и флаги, предоставляющие сведения о передаваемых или возвращаемых данных WNODE_XXX .

Комментарии

За элементом WnodeHeaderструктуры WNODE_EVENT_ITEM следует структура, тип которой зависит от флагов, установленных в WnodeHeader. Возможные возможности включают WNODE_ALL_DATA, WNODE_SINGLE_INSTANCE и WNODE_SINGLE_ITEM. Дополнительные сведения о флагах см. в разделе WNODE_HEADER.

Элемент ProviderIdструктуры WNODE_HEADER для использования в структуре WNODE_EVENT_ITEM следует инициализировать с помощью IoWMIDeviceObjectToProviderId.

Драйвер создает только события, которые он ранее включил в ответ на запрос IRP_MN_ENABLE_EVENTS . Чтобы создать событие, драйвер вызывает IoWMIWriteEvent и передает указатель на WNODE_EVENT_ITEM. WMI помещает событие в очередь для доставки всем потребителям данных, зарегистрированным для этого события.

Для оптимальной производительности события должны иметь небольшой размер. Однако если объем данных для события превышает максимальный размер, определенный в реестре, драйвер может передать WNODE_EVENT_REFERENCE, который WMI использует для запроса связанных WNODE_EVENT_ITEM. Дополнительные сведения об определении и создании событий WMI см. в статье Инструментарий управления Windows.

Требования

Требование Значение
Заголовок wmistr.h (включая Wmistr.h)

См. также раздел

IRP_MN_ENABLE_EVENTS

IoWMIDeviceObjectToProviderId

IoWMIWriteEvent

WNODE_ALL_DATA

WNODE_EVENT_REFERENCE

WNODE_HEADER

WNODE_SINGLE_INSTANCE

WNODE_SINGLE_ITEM