EVT_WDF_WMI_INSTANCE_SET_INSTANCE回调函数 (wdfwmi.h)

[仅适用于 KMDF]

驱动程序的 EvtWmiInstanceSetInstance 回调函数将所有 WMI 数据提供程序的实例数据设置为 WMI 客户端提供的值。

语法

EVT_WDF_WMI_INSTANCE_SET_INSTANCE EvtWdfWmiInstanceSetInstance;

NTSTATUS EvtWdfWmiInstanceSetInstance(
  [in] WDFWMIINSTANCE WmiInstance,
  [in] ULONG InBufferSize,
  [in] PVOID InBuffer
)
{...}

参数

[in] WmiInstance

WMI 实例对象的句柄。

[in] InBufferSize

InBuffer 指向的输入缓冲区的大小(以字节为单位)。

[in] InBuffer

指向输入缓冲区的指针。

返回值

如果操作成功, EvtWmiInstanceSetInstance 回调函数必须返回STATUS_SUCCESS。 否则,此函数必须返回一个状态值, NT_SUCCESS (状态) 等于 FALSE。 如果 InBuffer 参数指向的输入缓冲区太小,无法包含驱动程序所需的所有数据,则回调函数必须返回STATUS_WMI_SET_FAILURE。

注解

若要注册 EvtWmiInstanceSetInstance 回调函数,驱动程序必须在调用 WdfWmiInstanceCreate 之前将该函数的地址置于 WDF_WMI_INSTANCE_CONFIG 结构中。

框架不会将对驱动程序的 WMI 事件回调函数的调用彼此或与驱动程序的任何其他事件回调函数的调用同步。 如果 EvtWmiInstanceSetInstance 回调函数的数据是动态的,并且与其他回调函数共享,则驱动程序可以使用框架的 等待锁或旋转锁 来同步对数据的访问。

有关 EvtWmiInstanceSetInstance 回调函数的详细信息,请参阅 支持 Framework-Based 驱动程序中的 WMI

要求

要求
目标平台 通用
最低 KMDF 版本 1.0
标头 wdfwmi.h (包括 Wdf.h)
IRQL PASSIVE_LEVEL

另请参阅

EvtWmiInstanceExecuteMethod

EvtWmiInstanceQueryInstance

EvtWmiInstanceSetItem

EvtWmiProviderFunctionControl

WDF_WMI_INSTANCE_CONFIG

WdfWmiInstanceCreate