ChangerGetParameters 함수(mcd.h)

ChangerGetParameters 는 IOCTL 코드 IOCTL_CHANGER_GET_PARAMETERS 사용하여 디바이스 제어 IRP의 디바이스별 측면을 처리합니다.

구문

NTSTATUS ChangerGetParameters(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] PIRP           Irp
);

매개 변수

[in] DeviceObject

변경자를 나타내는 디바이스 개체에 대한 포인터입니다.

[in] Irp

IRP에 대한 포인터입니다.

반환 값

ChangerGetParameters는 시스템 포트 드라이버 또는 다음 값 중 하나에서 반환되는 STATUS_XXX 값을 반환합니다.

STATUS_SUCCESS

STATUS_INFO_LENGTH_MISMATCH

STATUS_INSUFFICIENT_RESOURCES

설명

이 루틴은 필수입니다.

ChangerGetParameters는 해당 요소의 수와 형식 및 지원하는 기능을 포함하여 변경자의 매개 변수를 반환합니다.

체인저 클래스 드라이버는 ChangerGetParameters를 호출하기 전에 I/O 스택 위치에서 출력 버퍼 길이를 확인합니다. 출력 버퍼 길이가 sizeof(GET_CHANGER_PARAMETERS)보다 작으면 변경자 클래스 드라이버가 STATUS_INFO_LENGTH_MISMATCH 값을 사용하여 반환합니다.

ChangerGetParameters 는 CDB를 사용하여 SRB를 빌드하여 디바이스에서 매개 변수 데이터를 검색하여 SCSI 매개 변수 헤더 페이지, 요소 주소 페이지, 전송 기하 도형 페이지 및 디바이스 기능 페이지 또는 이 데이터에 해당하는 비 SCSI를 가져옵니다.

그런 다음 ChangerGetParametersIrp->AssociatedIrp.SystemBuffer에서 GET_CHANGER_PARAMETERS 구조를 채운 후 체인저 클래스 드라이버로 돌아갑니다.

요구 사항

   
대상 플랫폼 데스크톱
헤더 mcd.h(Mcd.h, Ntddchgr.h 포함)
IRQL PASSIVE_LEVEL

참고 항목

GET_CHANGER_PARAMETERS

IOCTL_CHANGER_GET_PARAMETERS