Partilhar via


Função ScsiPortWmiFireLogicalUnitEvent (scsiwmi.h)

A rotina de ScsiPortWmiFireLogicalUnitEvent envia um evento associado a uma unidade lógica para o driver de porta para entrega aos consumidores de dados WMI que solicitaram a notificação do evento.

Observação o driver de porta SCSI e os modelos de driver de miniporto SCSI podem estar alterados ou indisponíveis no futuro. Em vez disso, recomendamos usar o de driver do Storport e miniporto storport modelos de driver.
 

Sintaxe

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

Ponteiro para a extensão do dispositivo de hardware. Essa é uma área de armazenamento por HBA que o driver de porta aloca e inicializa em nome do driver de miniporto. Os drivers de miniporto geralmente armazenam informações específicas do HBA nessa extensão, como o estado do HBA e os intervalos de acesso mapeados do HBA. Essa área está disponível para o driver de miniporto no DeviceExtension->HwDeviceExtension membro do objeto de dispositivo do HBA imediatamente após o driver de miniporto chamar ScsiPortInitialize. O driver de porta libera essa memória quando remove o dispositivo.

[in] PathId

Identifica o barramento SCSI; SP_UNTAGGED indica todos os ônibus controlados pelo HBA.

[in] TargetId

Identifica o controlador de destino ou o dispositivo no determinado barramento(es); SP_UNTAGGED indica todos os destinos no ônibus.

[in] Lun

Identifica a unidade lógica para o determinado controlador de destino ou dispositivo; SP_UNTAGGED indica todas as unidades lógicas para os controladores de destino determinados nos ônibus(es) especificados.

[in] Guid

Ponteiro para o GUID que representa o bloco de eventos.

[in] InstanceIndex

Se o bloco de eventos tiver várias instâncias, especifica o índice da instância.

[in] EventDataSize

Especifica o número de bytes de dados em EventData, não incluindo bytes de pad no início do buffer de dados do evento. Se nenhum dado for gerado para um evento, EventDataSize deverá ser definido como zero.

[in] EventData

Ponteiro para um buffer alocado pelo driver de miniport contendo dados gerados pelo driver de miniporto para o evento. O buffer deve ter pelo menos o tamanho dos dados de evento mais 0x40 bytes de pad no início do buffer.

Valor de retorno

Nenhum

Observações

Um driver de miniporto chama ScsiPortWmiFireLogicalUnitEvent para enviar um evento associado a um adaptador ou unidade lógica para todos os consumidores de dados que solicitaram a notificação do evento.

O driver de miniporto envia um evento somente se ele tiver sido habilitado anteriormente pela rotina de HwScsiWmiFunctionControl do driver de miniport.

O driver deve gravar dados de evento no buffer apontado por EventData em 0x40 de deslocamento. Os primeiros 0x40 bytes são usados pelo SCSI WMI. Se nenhum dado for passado novamente com o evento, EventData deverá ter 0x40 bytes de comprimento.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho scsiwmi.h (inclua Miniport.h, Scsi.h)

Consulte também

HwScsiWmiFunctionControl