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 之後,立即提供給 HBA 裝置物件的 DeviceExtension-HwDeviceExtension> 成員。 埠驅動程式會在移除裝置時釋放此記憶體。

[in] PathId

識別 SCSI 總線;SP_UNTAGGED表示由 HBA 控制的所有總線。

[in] TargetId

識別指定總線上的目標控制器或裝置, () ;SP_UNTAGGED表示總線上的所有目標。

[in] Lun

識別指定目標控制器或裝置的邏輯單元;SP_UNTAGGED會指出指定之目標控制器的所有邏輯單元, (指定總線 (上的) ) 。

[in] Guid

表示事件區塊之 GUID 的指標。

[in] InstanceIndex

如果事件區塊有多個實例,請指定 實例的索引。

[in] EventDataSize

指定 EventData 的數據位元組數目,不包括事件數據緩衝區開頭的 pad 位元組。 如果沒有為事件產生任何數據, EventDataSize 應該設定為零。

[in] EventData

迷你埠驅動程式配置的緩衝區指標,其中包含事件迷你埠驅動程式所產生的數據。 緩衝區必須至少是事件數據的大小,加上緩衝區開頭的0x40填補位元組。

傳回值

備註

迷你埠驅動程式會呼叫 ScsiPortWmiFireLogicalUnitEvent ,將與配接器或邏輯單元相關聯的事件傳送給已要求事件通知的所有數據取用者。

只有在迷你埠驅動程式的 HwScsiWmiFunctionControl 例程先前已啟用迷你埠驅動程式時,才會傳送事件。

驅動程式應該將事件數據寫入 EventData 在位移0x40所指向的緩衝區。 SCSI WMI 會使用第一個0x40位元組。 如果沒有使用 事件傳回任何數據, EventData 的長度應該0x40位元組。

規格需求

需求
目標平台 桌面
標頭 scsiwmi.h (包括 Miniport.h、Scsi.h)

另請參閱

HwScsiWmiFunctionControl