SCSI_WMILIB_CONTEXT结构 (scsiwmi.h)
SCSI_WMILIB_CONTEXT 结构为微型端口驱动程序的数据和事件块提供注册信息,并为微型端口驱动程序的 HwScsiWmiXxx 回调例程定义入口点。
语法
typedef struct _SCSIWMILIB_CONTEXT {
ULONG GuidCount;
PSCSIWMIGUIDREGINFO GuidList;
PSCSIWMI_QUERY_REGINFO QueryWmiRegInfo;
PSCSIWMI_QUERY_DATABLOCK QueryWmiDataBlock;
PSCSIWMI_SET_DATABLOCK SetWmiDataBlock;
PSCSIWMI_SET_DATAITEM SetWmiDataItem;
PSCSIWMI_EXECUTE_METHOD ExecuteWmiMethod;
PSCSIWMI_FUNCTION_CONTROL WmiFunctionControl;
} SCSI_WMILIB_CONTEXT, *PSCSI_WMILIB_CONTEXT;
成员
GuidCount
指定 GuidList 中 SCSIWMIGUIDREGINFO 数组中的结构数。
GuidList
指向包含每个块的注册信息的 GuidCount SCSIWMIGUIDREGINFO 结构的数组。
QueryWmiRegInfo
指向驱动程序的 HwScsiWmiQueryReginfo 例程,该例程是支持 WMI 的微型端口驱动程序所需的入口点。
QueryWmiDataBlock
指向驱动程序的 HwScsiWmiQueryDataBlock 例程,该例程是支持 WMI 的微型端口驱动程序所需的入口点。
SetWmiDataBlock
指向驱动程序的 HwScsiWmiSetDataBlock 例程,该例程是支持 WMI 的微型端口驱动程序的可选入口点。 如果微型端口驱动程序未实现此例程,则必须将此成员设置为 NULL
SetWmiDataItem
指向驱动程序的 HwScsiWmiSetDataItem 例程,该例程是支持 WMI 的微型端口驱动程序的可选入口点。 如果微型端口驱动程序未实现此例程,则必须将此成员设置为 NULL。
ExecuteWmiMethod
指向驱动程序的 HwScsiWmiExecuteMethod 例程,该例程是支持 WMI 的微型端口驱动程序的可选入口点。 如果微型端口驱动程序未实现此例程,则必须将此成员设置为 NULL
WmiFunctionControl
指向驱动程序的 HwScsiWmiFunctionControl 例程,该例程是支持 WMI 的微型端口驱动程序的可选入口点。 如果微型端口驱动程序未实现此例程,则必须将此成员设置为 NULL。
注解
支持 WMI 的 SCSI 微型端口驱动程序在其设备扩展中存储初始化SCSI_WMILIB_CONTEXT结构 (或指向此类结构的指针) 。 如果每个设备对象提供同一组数据块,微型端口驱动程序可以对多个设备对象使用相同的SCSI_WMILIB_CONTEXT结构。
当微型端口驱动程序收到 函数 成员设置为 SRB_FUNCTION_WMI 的 SRB 时,它会使用请求参数(包括指向初始化SCSI_WMILIB_CONTEXT结构的指针)调用 ScsiPortWmiDispatchFunction 。 ScsiPortWmiDispatchFunction 通过调用微型端口驱动程序的相应 HwScsiWmiXxx 例程来处理请求。
如果微型端口驱动程序未实现可选的 HwScsiWmiXxx 例程,则端口驱动程序会向调用方返回适当的状态。
要求
要求 | 值 |
---|---|
Header | scsiwmi.h (包括 Scsiwmi.h) |