Condividi tramite


Funzione ScsiPortWmiFireLogicalUnitEvent (scsiwmi.h)

La routine ScsiPortWmiFireLogicalUnitEvent invia un evento associato a un'unità logica al driver di porta per il recapito ai consumer di dati WMI che hanno richiesto la notifica dell'evento.

Nota I modelli di driver porta SCSI e miniport SCSI potrebbero essere modificati o non disponibili in futuro. È invece consigliabile usare driver Storport e modelli di driver miniport Storport.
 

Sintassi

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
);

Parametri

[in] HwDeviceExtension

Puntatore all'estensione del dispositivo hardware. Si tratta di un'area di archiviazione per HBA che il driver della porta alloca e inizializza per conto del driver miniport. I driver Miniport in genere archiviano informazioni specifiche di HBA in questa estensione, ad esempio lo stato dell'HBA e gli intervalli di accesso mappati dell'HBA. Questa area è disponibile per il driver miniport nel DeviceExtension->HwDeviceExtension membro dell'oggetto dispositivo dell'HBA subito dopo che il driver miniport chiama ScsiPortInitialize. Il driver della porta libera questa memoria quando rimuove il dispositivo.

[in] PathId

Identifica il bus SCSI; SP_UNTAGGED indica tutti gli autobus controllati dall'HBA.

[in] TargetId

Identifica il controller o il dispositivo di destinazione nel bus specificato; SP_UNTAGGED indica tutte le destinazioni del bus.

[in] Lun

Identifica l'unità logica per il controller di destinazione o il dispositivo specificato; SP_UNTAGGED indica tutte le unità logiche per i controller di destinazione specificati sul bus specificato.

[in] Guid

Puntatore al GUID che rappresenta il blocco eventi.

[in] InstanceIndex

Se il blocco di eventi ha più istanze, specifica l'indice dell'istanza.

[in] EventDataSize

Specifica il numero di byte di dati in EventData, non inclusi i byte di riempimento all'inizio del buffer dei dati dell'evento. Se non vengono generati dati per un evento, EventDataSize deve essere impostato su zero.

[in] EventData

Puntatore a un buffer allocato dal driver miniport contenente i dati generati dal driver miniport per l'evento. Il buffer deve avere almeno le dimensioni dei dati dell'evento più 0x40 byte del riquadro all'inizio del buffer.

Valore restituito

Nessuno

Osservazioni

Un driver miniport chiama ScsiPortWmiFireLogicalUnitEvent per inviare un evento associato a un adattatore o a un'unità logica a tutti i consumer di dati che hanno richiesto la notifica dell'evento.

Il driver miniport invia un evento solo se è stato abilitato in precedenza dalla routine del driver miniport HwScsiWmiFunctionControl.

Il driver deve scrivere i dati dell'evento nel buffer a cui punta EventData in corrispondenza dell'offset 0x40. I primi 0x40 byte vengono usati da WMI SCSI. Se non viene passato alcun dato con l'evento, EventData deve essere 0x40 byte.

Fabbisogno

Requisito Valore
piattaforma di destinazione Desktop
intestazione scsiwmi.h (include Miniport.h, Scsi.h)

Vedere anche

HwScsiWmiFunctionControl