функция обратного вызова EVT_WDF_WMI_INSTANCE_SET_ITEM (wdfwmi.h)
[Применяется только к KMDF]
Функция обратного вызова EvtWmiInstanceSetItem драйвера задает для одного элемента данных экземпляра поставщика данных WMI значение, которое предоставляет клиент WMI.
Синтаксис
EVT_WDF_WMI_INSTANCE_SET_ITEM EvtWdfWmiInstanceSetItem;
NTSTATUS EvtWdfWmiInstanceSetItem(
[in] WDFWMIINSTANCE WmiInstance,
[in] ULONG DataItemId,
[in] ULONG InBufferSize,
[in] PVOID InBuffer
)
{...}
Параметры
[in] WmiInstance
Дескриптор объекта экземпляра WMI.
[in] DataItemId
Значение , определяющее элемент данных для экземпляра поставщика. Это значение соответствует значению WmiDataId , указанному в MOF-файле поставщика.
[in] InBufferSize
Размер (в байтах) входного буфера, на который указывает InBuffer .
[in] InBuffer
Указатель на входной буфер.
Возвращаемое значение
Функция обратного вызова EvtWmiInstanceSetItem должна возвращать STATUS_SUCCESS, если операция выполнена успешно. В противном случае эта функция должна возвращать значение состояния, для которого NT_SUCCESS(status) равно FALSE. Если входной буфер, на который указывает параметр InBuffer , слишком мал для хранения всех данных, ожидаемых драйвером, функция обратного вызова должна возвращать STATUS_WMI_SET_FAILURE.
Комментарии
Чтобы зарегистрировать функцию обратного вызова EvtWmiInstanceSetItem , драйвер должен поместить адрес функции в структуру WDF_WMI_INSTANCE_CONFIG перед вызовом WdfWmiInstanceCreate.
Платформа не синхронизирует вызовы функций обратного вызова событий WMI драйвера друг с другом или с другими функциями обратного вызова событий драйвера. Если данные функции обратного вызова EvtWmiInstanceSetItem являются динамическими и совместно используются другими функциями обратного вызова, драйвер может использовать блокировки ожидания или блокировки спина платформы для синхронизации доступа к данным.
Дополнительные сведения о функции обратного вызова EvtWmiInstanceSetItem см. в разделе Поддержка WMI в драйверах Framework-Based.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Минимальная версия KMDF | 1,0 |
Верхняя часть | wdfwmi.h (включая Wdf.h) |
IRQL | PASSIVE_LEVEL |