IOCTL_SCSI_MINIPORT IOCTL (ntddscsi.h)
Envia uma função de controle especial para um driver de miniporta HBA (específico do barramento de host). Os resultados variam, dependendo do driver de miniporto específico para o qual essa solicitação é encaminhada. Se o chamador especificar um Comprimento diferente de zero, o buffer de entrada ou saída deverá ser pelo menos (sizeof(SRB_IO_CONTROL) + DataBufferLength)).
A maneira prescrita de abrir o HBA é usar as APIs SetupDiXxx para obter todos os dispositivos da classe ScsiAdapter que estão em execução. Obtenha as propriedades de cada um para o nome da instância do dispositivo e abra o HBA diretamente. SCSI%d (por exemplo, \\.\Scsi0:) é um link simbólico e nem TODOS os drivers de armazenamento criam o link.
Observação
O driver de porta SCSI e os modelos de driver de miniporta SCSI podem ser alterados ou indisponíveis no futuro. Em vez disso, recomendamos usar os modelos de driver storport e driver de miniporto Storport .
Código principal
Buffer de entrada
O buffer em Irp-AssociatedIrp.SystemBuffer> deve conter uma estrutura SRB_IO_CONTROL.
Comprimento do buffer de entrada
Parameters.DeviceIoControl.InputBufferLength indica o tamanho, em bytes, do buffer, que deve ser pelo menos sizeof(SRB_IO_CONTROL), com armazenamento adicional para dados se o campo Length for diferente de zero.
Buffer de saída
Uma estrutura de SRB_IO_CONTROL atualizada é retornada ao buffer em Irp-AssociatedIrp.SystemBuffer>.
Comprimento do buffer de saída
O comprimento da estrutura SRB_IO_CONTROL .
Buffer de entrada/saída
Nenhum.
Comprimento do buffer de entrada/saída
Não aplicável.
Bloco de status
O campo Informações contém o número de bytes retornados no buffer de saída. O campo Status indica os resultados da operação.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ntddscsi.h (inclua Ntddscsi.h) |