Função WmiFireEvent (wmilib.h)
A rotina WmiFireEvent envia um evento ao WMI para entrega aos consumidores de dados que solicitaram a notificação do evento.
Sintaxe
NTSTATUS WmiFireEvent(
[in] PDEVICE_OBJECT DeviceObject,
[in] LPCGUID Guid,
[in] ULONG InstanceIndex,
[in] ULONG EventDataSize,
[in, optional] PVOID EventData
);
Parâmetros
[in] DeviceObject
Um ponteiro para o DEVICE_OBJECT do driver.
[in] Guid
Um ponteiro para o GUID que representa o bloco de eventos.
[in] InstanceIndex
Se o bloco de eventos tiver várias instâncias, especificará o índice da instância.
[in] EventDataSize
Especifica o número de bytes de dados em EventData. Se nenhum dado for gerado para um evento, EventData deverá ser zero.
[in, optional] EventData
Um ponteiro para um buffer nãopagado alocado por driver que contém dados gerados pelo driver para o evento. Se nenhum dado for gerado para um evento, EventData deverá ser NULL. O WMI libera o buffer sem intervenção adicional do driver.
Retornar valor
WmiFireEvent propaga o status retornado por IoWmiWriteEvent ou retorna STATUS_INSUFFICIENT_RESOURCES se não puder alocar memória para o evento.
Comentários
Um driver chama WmiFireEvent para enviar um evento ao WMI para entrega a todos os consumidores de dados que solicitaram a notificação do evento. Todos os ponteiros passados para WmiFireEvent devem apontar para memória nãopagável, como pool nãopagado.
O driver enviará um evento somente se ele tiver sido habilitado anteriormente pela rotina DpWmiFunctionControl do driver, que o WMI chama para processar uma solicitação de IRP_MN_ENABLE_EVENT .
O driver grava todos os dados associados ao evento no buffer em EventData. O WMI preenche uma estrutura WNODE_SINGLE_INSTANCE com os dados e chama IoWmiWriteEvent para entregar o evento.
Para obter mais informações sobre o rastreamento de eventos, consulte Rastreamento de eventos WMI.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Disponível a partir do Windows 2000. |
Plataforma de Destino | Universal |
Cabeçalho | wmilib.h (inclua Wmilib.h) |
Biblioteca | Wmilib.lib |
IRQL | <= DISPATCH_LEVEL |