다음을 통해 공유


IOCTL_SCSI_GET_INQUIRY_DATA IOCTL(ntddscsi.h)

지정된 SCSI HBA(호스트 버스 어댑터)의 모든 디바이스에 대한 SCSI 조회 데이터를 반환합니다. IOCTL을 사용자 공간에서 사용하는 경우 프로그램은 SetupDixxx 호출과 같은 다양한 방법으로 열거할 수 있는 HBA에 대한 핸들을 열어야 합니다. IOCTL_STORAGE_QUERY_PROPERTY 사용하여 HBA에서 특정 디바이스에 대한 정보를 찾을 수 있습니다. 필요한 출력 버퍼의 크기를 확인하려면 호출자가 이 IOCTL 요청을 루프로 보내야 합니다. 스토리지 스택이 버퍼가 너무 작다는 오류 메시지와 함께 IOCTL을 거부할 때마다 호출자는 버퍼 크기를 두 배로 줄여야 합니다.

참고 SCSI 포트 드라이버 및 SCSI 미니포트 드라이버 모델은 나중에 변경되거나 사용할 수 없습니다. 대신 Storport 드라이버Storport 미니포트 드라이버 모델을 사용하는 것이 좋습니다.
 

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

없음

입력 버퍼 길이

없음

출력 버퍼

Irp-AssociatedIrp.SystemBuffer>의 버퍼에는 반환된 조회 데이터가 포함됩니다. 출력 버퍼의 조회 데이터 레이아웃에 대한 설명은 SCSI_ADAPTER_BUS_INFO 참조하세요.

출력 버퍼 길이

Parameters.DeviceIoControl.OutputBufferLength는 버퍼의 크기(바이트)를 나타내며, 버퍼의 크기는 =(sizeof(SCSI_ADAPTER_BUS_INFO) + (NumberOfBuses) * sizeof(SCSI_BUS_DATA)) + (InquiryDataSize * NumberOfLUs)여야 합니다>. 여기서 InquiryDataSize는 (sizeof(SCSI_INQUIRY_DATA) - 1 + INQUIRYDATABUFFERSIZE)가 정렬 경계로 반올림됩니다.

상태 블록

정보 필드에는 출력 버퍼에 반환된 바이트 수가 포함됩니다. 상태 필드는 작업의 결과를 나타냅니다.

요구 사항

요구 사항
헤더 ntddscsi.h(Ntddscsi.h 포함)

추가 정보

IOCTL_SCSI_MINIPORT

IOCTL_SCSI_PASS_THROUGH

IOCTL_SCSI_PASS_THROUGH_DIRECT

IOCTL_SCSI_RESCAN_BUS

IOCTL_STORAGE_QUERY_PROPERTY

SCSI_ADAPTER_BUS_INFO

SCSI_INQUIRY_DATA

STORAGE_DEVICE_DESCRIPTOR