EVT_WDF_WMI_INSTANCE_SET_INSTANCE callback function (wdfwmi.h)

[Applies to KMDF only]

A driver's EvtWmiInstanceSetInstance callback function sets all of a WMI data provider's instance data to values that a WMI client supplies.

Syntax

EVT_WDF_WMI_INSTANCE_SET_INSTANCE EvtWdfWmiInstanceSetInstance;

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

Parameters

[in] WmiInstance

A handle to a WMI instance object.

[in] InBufferSize

The size, in bytes, of the input buffer that InBuffer points to.

[in] InBuffer

A pointer to the input buffer.

Return value

The EvtWmiInstanceSetInstance callback function must return STATUS_SUCCESS if the operation succeeds. Otherwise, this function must return a status value for which NT_SUCCESS(status) equals FALSE. If the input buffer that the InBuffer parameter points to is too small to contain all of the data that the driver expects, the callback function must return STATUS_WMI_SET_FAILURE.

Remarks

To register an EvtWmiInstanceSetInstance callback function, your driver must place the function's address in a WDF_WMI_INSTANCE_CONFIG structure before calling WdfWmiInstanceCreate.

The framework does not synchronize calls to a driver's WMI event callback functions with each other or with any of the driver's other event callback functions. If an EvtWmiInstanceSetInstance callback function's data is dynamic and shared with other callback functions, your driver can use the framework's wait locks or spin locks to synchronize access to the data.

For more information about the EvtWmiInstanceSetInstance callback function, see Supporting WMI in Framework-Based Drivers.

Requirements

Requirement Value
Target Platform Universal
Minimum KMDF version 1.0
Header wdfwmi.h (include Wdf.h)
IRQL PASSIVE_LEVEL

See also

EvtWmiInstanceExecuteMethod

EvtWmiInstanceQueryInstance

EvtWmiInstanceSetItem

EvtWmiProviderFunctionControl

WDF_WMI_INSTANCE_CONFIG

WdfWmiInstanceCreate