IOCTL_SCSI_GET_INQUIRY_DATA IOCTL (ntddscsi.h)
Retorna os dados de consulta SCSI para todos os dispositivos em um determinado HBA (adaptador de barramento de host) SCSI. Se o IOCTL estiver empregado no espaço do usuário, o programa deverá ter aberto um identificador para o HBA, que pode ser enumerado por vários meios, como chamadas SetupDixxx. Você pode usar IOCTL_STORAGE_QUERY_PROPERTY para encontrar informações sobre um dispositivo específico no HBA. Para determinar o tamanho do buffer de saída necessário, o chamador deve enviar essa solicitação IOCTL em um loop. Sempre que a pilha de armazenamento rejeita o IOCTL com uma mensagem de erro que indica que o buffer era muito pequeno, o chamador deve dobrar o tamanho do buffer.
Código principal
Buffer de entrada
Nenhum.
Comprimento do buffer de entrada
Nenhum.
Buffer de saída
O buffer em Irp-AssociatedIrp.SystemBuffer> contém os dados de investigação retornados. Para obter uma descrição do layout dos dados de consulta no buffer de saída, consulte SCSI_ADAPTER_BUS_INFO.
Comprimento do buffer de saída
Parameters.DeviceIoControl.OutputBufferLength indica o tamanho, em bytes, do buffer, que deve ser >= (sizeof(SCSI_ADAPTER_BUS_INFO) + (NumberOfBuses) * sizeof(SCSI_BUS_DATA)) + (InquiryDataSize * NumberOfLUs), em que InquiryDataSize é (sizeof(SCSI_INQUIRY_DATA) - 1 + INQUIRYDATABUFFERSIZE) arredondado até um limite de alinhamento.
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) |