структура 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
Указывает количество структур в массиве SCSIWMIGUIDREGINFO в GuidList.
GuidList
Указывает на массив структур GuidCount SCSIWMIGUIDREGINFO, содержащих сведения о регистрации для каждого блока.
QueryWmiRegInfo
Указывает на подпрограмму HwScsiWmiQueryReginfo драйвера, которая является обязательной точкой входа для драйверов мини-портов, поддерживающих WMI.
QueryWmiDataBlock
Указывает на подпрограмму HwScsiWmiQueryDataBlock драйвера, которая является обязательной точкой входа для драйверов мини-портов, поддерживающих WMI.
SetWmiDataBlock
Указывает на подпрограмму HwScsiWmiSetDataBlock драйвера, которая является необязательной точкой входа для драйверов мини-портов, поддерживающих WMI. Если драйвер мини-порта не реализует эту подпрограмму, он должен присвоить этому члену значение NULL.
SetWmiDataItem
Указывает на подпрограмму HwScsiWmiSetDataItem драйвера, которая является необязательной точкой входа для драйверов miniport, поддерживающих WMI. Если драйвер мини-порта не реализует эту подпрограмму, он должен присвоить этому члену значение NULL.
ExecuteWmiMethod
Указывает на подпрограмму HwScsiWmiExecuteMethod драйвера, которая является необязательной точкой входа для драйверов мини-портов, поддерживающих WMI. Если драйвер мини-порта не реализует эту подпрограмму, он должен присвоить этому члену значение NULL.
WmiFunctionControl
Указывает на подпрограмму HwScsiWmiFunctionControl драйвера, которая является необязательной точкой входа для драйверов мини-портов, поддерживающих WMI. Если драйвер мини-порта не реализует эту подпрограмму, он должен присвоить этому члену значение NULL.
Комментарии
Драйвер мини-порта SCSI, поддерживающий WMI, сохраняет инициализированную структуру SCSI_WMILIB_CONTEXT (или указатель на такую структуру) в расширении устройства. Драйвер мини-порта может использовать одну и ту же структуру SCSI_WMILIB_CONTEXT для нескольких объектов устройства, если каждый объект устройства предоставляет один и тот же набор блоков данных.
Когда драйвер мини-порта получает SRB, в котором член функции имеет значение SRB_FUNCTION_WMI, он вызывает ScsiPortWmiDispatchFunction с параметрами запроса, включая указатель на инициализированную структуру SCSI_WMILIB_CONTEXT. ScsiPortWmiDispatchFunction обрабатывает запрос, вызывая соответствующую подпрограмму HwScsiWmiXxxx драйвера мини-порта.
Если драйвер мини-порта не реализует необязательную подпрограмму HwScsiWmiXxxx, драйвер порта возвращает вызывающей объекту соответствующее состояние.
Требования
Требование | Значение |
---|---|
Заголовок | scsiwmi.h (включая Scsiwmi.h) |