다음을 통해 공유


IOCTL_CHANGER_GET_ELEMENT_STATUS IOCTL(ntddchgr.h)

모든 요소의 상태 또는 특정 형식의 지정된 수의 요소 상태를 반환합니다.

가능한 요소 형식에 대한 설명은 CHANGER_ELEMENT참조하세요.

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

Irp->AssociatedIrp.SystemBuffer 버퍼에는 요소 형식과 상태를 반환할 요소 수를 나타내는 CHANGER_READ_ELEMENT_STATUS 데이터가 포함됩니다.

호출자가 CHANGER_READ_ELEMENT_STATUS VolumeTagInfo 멤버를 TRUE설정하면 반환되는 요소 상태에 볼륨 태그 정보가 포함됩니다.

입력 버퍼 길이

I/O 스택 위치의 parameters.DeviceIoControl.InputBufferLength 입력에 대한 매개 변수 버퍼의 크기(바이트)를 나타내며 >= sizeof(CHANGER_READ_ELEMENT_STATUS)이어야 합니다.

출력 버퍼

체인저 미니클래스 드라이버는 Irp->AssociatedIrp.SystemBuffer버퍼의 변경자 요소 상태 데이터를 반환합니다. ChangerDrive 유형의 일부 요소는 제품 정보 데이터를 반환할 있습니다. 디바이스에서 제품 정보를 제공하는 경우 미니클래스 드라이버는 요소 상태 데이터를 CHANGER_ELEMENT_STATUS_EX형식의 구조로 보고합니다. 미니 클래스 드라이버는 구조체의 Flags 멤버에 ELEMENT_STATUS_PRODUCT_DATA 설정하여 제품 정보 데이터가 포함되어 있음을 나타냅니다. ChangerDrive이외의 모든 형식의 요소의 경우 드라이버는 요소 상태 데이터를 CHANGER_ELEMENT_STATUS형식 구조로 보고합니다.

출력 버퍼 길이

Parameters.DeviceIoControl.OutputBufferLength 출력에 대한 매개 변수 버퍼의 크기를 바이트 단위로 나타냅니다. ChangerDrive형식 요소의 경우 이 값은 >= NumberOfElements * sizeof(CHANGER_ELEMENT_STATUS_EX)이어야 합니다. 다른 모든 형식의 요소에 대해 이 값은 >= NumberOfElements * sizeof(CHANGER_ELEMENT_STATUS)이어야 합니다.

상태 블록

정보 필드는 반환된 바이트 수로 설정됩니다. 상태 필드는 STATUS_SUCCESS 또는 STATUS_BUFFER_TOO_SMALL, STATUS_INFO_LENGTH_MISMATCH, STATUS_INSUFFICIENT_RESOURCES, STATUS_INVALID_ELEMENT_ADDRESS 또는 STATUS_INVALID_PARAMETER 설정됩니다.

요구 사항

요구
헤더 ntddchgr.h(Ntddchgr.h 포함)

참고 항목

CHANGER_ELEMENT

CHANGER_ELEMENT_STATUS

CHANGER_ELEMENT_STATUS_EX

ChangerGetElementStatus