Fungsi WmiFireEvent (wmilib.h)
Rutinitas WmiFireEvent mengirimkan peristiwa ke WMI untuk pengiriman ke konsumen data yang telah meminta pemberitahuan peristiwa tersebut.
Sintaks
NTSTATUS WmiFireEvent(
[in] PDEVICE_OBJECT DeviceObject,
[in] LPCGUID Guid,
[in] ULONG InstanceIndex,
[in] ULONG EventDataSize,
[in, optional] PVOID EventData
);
Parameter
[in] DeviceObject
Penunjuk ke DEVICE_OBJECT pengemudi.
[in] Guid
Penunjuk ke GUID yang mewakili blok peristiwa.
[in] InstanceIndex
Jika blok peristiwa memiliki beberapa instans, tentukan indeks instans.
[in] EventDataSize
Menentukan jumlah byte data di EventData. Jika tidak ada data yang dihasilkan untuk suatu peristiwa, EventData harus nol.
[in, optional] EventData
Penunjuk ke buffer yang tidak dialokasikan driver yang berisi data yang dihasilkan oleh driver untuk peristiwa tersebut. Jika tidak ada data yang dihasilkan untuk suatu peristiwa, EventData harus NULL. WMI membebaskan buffer tanpa intervensi lebih lanjut oleh pengemudi.
Nilai kembali
WmiFireEvent menyebarluaskan status yang dikembalikan oleh IoWmiWriteEvent, atau mengembalikan STATUS_INSUFFICIENT_RESOURCES jika tidak dapat mengalokasikan memori untuk peristiwa tersebut.
Keterangan
Driver memanggil WmiFireEvent untuk mengirim acara ke WMI untuk pengiriman ke semua konsumen data yang telah meminta pemberitahuan peristiwa. Semua pointer yang diteruskan ke WmiFireEvent harus menunjuk ke memori yang tidak dapat disebarkan, seperti kumpulan yang tidak disebarkan.
Driver mengirimkan peristiwa hanya jika sebelumnya telah diaktifkan oleh rutinitas DpWmiFunctionControl driver, yang dipanggil WMI untuk memproses permintaan IRP_MN_ENABLE_EVENT .
Driver menulis data apa pun yang terkait dengan peristiwa ke buffer di EventData. WMI mengisi struktur WNODE_SINGLE_INSTANCE dengan data dan memanggil IoWmiWriteEvent untuk mengirimkan acara.
Untuk informasi selengkapnya tentang pelacakan peristiwa, lihat Pelacakan Peristiwa WMI.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia dimulai dengan Windows 2000. |
Target Platform | Universal |
Header | wmilib.h (termasuk Wmilib.h) |
Pustaka | Wmilib.lib |
IRQL | <= DISPATCH_LEVEL |