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