ScsiPortWmiFireLogicalUnitEvent 函数 (scsiwmi.h)

ScsiPortWmiFireLogicalUnitEvent 例程将与逻辑单元关联的事件发送到端口驱动程序,以便传递给请求事件通知的 WMI 数据使用者。

注意 SCSI 端口驱动程序和 SCSI 微型端口驱动程序模型将来可能会更改或不可用。 相反,我们建议使用 Storport 驱动程序Storport 微型端口 驱动程序模型。
 

语法

void ScsiPortWmiFireLogicalUnitEvent(
  [in] PVOID  HwDeviceExtension,
  [in] UCHAR  PathId,
  [in] UCHAR  TargetId,
  [in] UCHAR  Lun,
  [in] LPGUID Guid,
  [in] ULONG  InstanceIndex,
  [in] ULONG  EventDataSize,
  [in] PVOID  EventData
);

参数

[in] HwDeviceExtension

指向硬件设备扩展的指针。 这是端口驱动程序代表微型端口驱动程序分配和初始化的每个 HBA 存储区域。 微型端口驱动程序通常在此扩展中存储特定于 HBA 的信息,例如 HBA 的状态和 HBA 的映射访问范围。 在微型端口驱动程序调用 ScsiPortInitialize后,此区域可供 DeviceExtension->HwDeviceExtension 成员的微型端口驱动程序使用。 端口驱动程序在删除设备时释放此内存。

[in] PathId

标识 SCSI 总线;SP_UNTAGGED指示 HBA 控制的所有总线。

[in] TargetId

标识给定总线上的目标控制器或设备(es):SP_UNTAGGED指示总线上的所有目标。

[in] Lun

标识给定目标控制器或设备的逻辑单元;SP_UNTAGGED指示给定总线上给定目标控制器的所有逻辑单元。

[in] Guid

指向表示事件块的 GUID 的指针。

[in] InstanceIndex

如果事件块有多个实例,则指定实例的索引。

[in] EventDataSize

指定 EventData处的数据字节数,不包括事件数据缓冲区开头的填充字节数。 如果未为事件生成任何数据,EventDataSize 应设置为零。

[in] EventData

指向微型端口驱动程序分配的缓冲区的指针,其中包含由该事件的微型端口驱动程序生成的数据。 缓冲区必须至少是事件数据的大小加上缓冲区开头0x40填充字节的大小。

返回值

没有

言论

微型端口驱动程序调用 ScsiPortWmiFireLogicalUnitEvent,将与适配器或逻辑单元关联的事件发送到请求事件通知的所有数据使用者。

仅当微型端口驱动程序的 HwScsiWmiFunctionControl 例程之前启用该事件时,微型端口驱动程序才会发送事件。

驱动程序应以偏移量0x40 EventData 指向的缓冲区写入事件数据。 SCSI WMI 使用第一个0x40字节。 如果未使用事件传递回任何数据,则 EventData 应以长度0x40字节。

要求

要求 价值
目标平台 桌面
标头 scsiwmi.h (包括 Miniport.h、Scsi.h)

另请参阅

HwScsiWmiFunctionControl