Función ScsiPortWmiFireLogicalUnitEvent (scsiwmi.h)
La rutina ScsiPortWmiFireLogicalUnitEvent envía un evento asociado a una unidad lógica al controlador de puerto para su entrega a los consumidores de datos WMI que han solicitado la notificación del evento.
Sintaxis
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
);
Parámetros
[in] HwDeviceExtension
Puntero a la extensión de dispositivo de hardware. Se trata de un área de almacenamiento por HBA que el controlador de puerto asigna e inicializa en nombre del controlador de minipuerto. Los controladores de minipuerto suelen almacenar información específica de HBA en esta extensión, como el estado del HBA y los intervalos de acceso asignados del HBA. Esta área está disponible para el controlador de miniport en el miembro DeviceExtension-HwDeviceExtension> del objeto de dispositivo del HBA inmediatamente después de que el controlador de miniporte llame a ScsiPortInitialize. El controlador de puerto libera esta memoria cuando quita el dispositivo.
[in] PathId
Identifica el bus SCSI; SP_UNTAGGED indica todos los autobuses controlados por el HBA.
[in] TargetId
Identifica el controlador de destino o el dispositivo en el bus(es) determinado); SP_UNTAGGED indica todos los destinos del bus.
[in] Lun
Identifica la unidad lógica para el dispositivo o el controlador de destino especificados; SP_UNTAGGED indica todas las unidades lógicas de los controladores de destino especificados en los buses especificados.
[in] Guid
Puntero al GUID que representa el bloque de eventos.
[in] InstanceIndex
Si el bloque de eventos tiene varias instancias, especifica el índice de la instancia.
[in] EventDataSize
Especifica el número de bytes de datos en EventData, no incluidos los bytes del panel al principio del búfer de datos de eventos. Si no se genera ningún dato para un evento, EventDataSize debe establecerse en cero.
[in] EventData
Puntero a un búfer asignado por el controlador de miniporte que contiene los datos generados por el controlador de minipuerto para el evento. El búfer debe tener al menos el tamaño de los datos del evento más 0x40 bytes del panel al principio del búfer.
Valor devuelto
None
Observaciones
Un controlador de minipuerto llama a ScsiPortWmiFireLogicalUnitEvent para enviar un evento asociado a un adaptador o una unidad lógica a todos los consumidores de datos que hayan solicitado la notificación del evento.
El controlador de minipuerto envía un evento solo si ha sido habilitado previamente por la rutina HwScsiWmiFunctionControl del controlador de miniporte.
El controlador debe escribir datos de eventos en el búfer al que apunta EventData en el 0x40 de desplazamiento. WMI SCSI usa los primeros 0x40 bytes. Si no se devuelve ningún dato con el evento, EventData debe tener 0x40 bytes de longitud.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | scsiwmi.h (incluya Miniport.h, Scsi.h) |