Funzione SCSIPortWmiFireLogicUnitEvent (scsiwmi.h)

La routine SCSIPortWmiFireLogicUnitEvent 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 di porta SCSI e miniport SCSI possono essere modificati o non disponibili in futuro. È invece consigliabile usare i modelli di driver Storport e 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 di 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 di HBA. Questa area è disponibile per il driver miniport nel membro DeviceExtension-HwDeviceExtension> dell'oggetto dispositivo HBA immediatamente dopo che il driver miniport chiama SCSIPortInitialize. Il driver di 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 di destinazione o il dispositivo nel bus(es) specificato; SP_UNTAGGED indica tutte le destinazioni del bus.

[in] Lun

Identifica l'unità logica per il controller di destinazione o il dispositivo specificati; SP_UNTAGGED indica tutte le unità logiche per i controller di destinazione specificati nel bus(es).

[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 pad 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 del driver miniport contenente i dati generati dal driver miniport per l'evento. Il buffer deve essere almeno la dimensione dei dati dell'evento e 0x40 byte del pad all'inizio del buffer.

Valore restituito

nessuno

Osservazioni

Un driver miniport chiama SCSIPortWmiFireLogicUnitEvent per inviare un evento associato a una scheda 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 HwSCSIWmiFunctionControl del driver miniport.

Il driver deve scrivere i dati degli eventi nel buffer a cui fa riferimento EventData in corrispondenza dell'offset 0x40. I primi 0x40 byte vengono usati da WMI SCSI. Se non vengono passati dati con l'evento, EventData deve essere 0x40 byte in lunghezza.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione SCSIwmi.h (includere Miniport.h, SCSI.h)

Vedi anche

HwScsiWmiFunctionControl