다음을 통해 공유


IOCTL_VOLUME_PHYSICAL_TO_LOGICAL IOCTL(ntddvol.h)

실제 디스크 번호 및 물리적 오프셋에 해당하는 논리 오프셋을 반환합니다.

볼륨 관리자는 모든 유형의 기본 및 동적 볼륨에 대해 설명된 대로 이 IOCTL을 지원합니다.

주 코드

IRP_MJ_DEVICE_CONTROL

입력 버퍼

호출자는 Irp->AssociatedIrp.SystemBuffer버퍼의 시작 부분에 물리적 오프셋 및 실제 디스크 번호를 포함하는 VOLUME_PHYSICAL_OFFSET 구조를 삽입합니다.

입력 버퍼 길이

IRP의 I/O 스택 위치에 있는 parameters.DeviceIoControl.InputBufferLength 입력 버퍼의 크기(바이트)를 나타내며, 이는 VOLUME_PHYSICAL_OFFSET(sizeof) 값보다 크거나 같아야 합니다.

출력 버퍼

볼륨 관리자는 Irp->AssociatedIrp.SystemBuffer버퍼의 시작 부분에 있는 VOLUME_LOGICAL_OFFSET 구조의 논리 오프셋을 반환합니다.

출력 버퍼 길이

IRP의 I/O 스택 위치에 있는 Parameters.DeviceIoControl.OutputBufferLength 출력 버퍼의 크기(바이트)를 나타내며, 이는 VOLUME_LOGICAL_OFFSET(sizeof) 값보다 크거나 같아야 합니다.

상태 블록

작업이 성공하면 상태 멤버가 STATUS_SUCCESS 설정됩니다.

입력 또는 출력 버퍼가 너무 작으면 볼륨 관리자는 상태 멤버를 STATUS_BUFFER_TOO_SMALL 설정합니다. 데이터가 출력 버퍼에 반환되지만 버퍼가 너무 작아서 모든 데이터를 수신할 수 없을 경우 볼륨 관리자는 상태 멤버를 STATUS_BUFFER_OVERFLOW 설정합니다. Information 멤버는 호출자가 제공하는 출력 버퍼의 크기로 설정됩니다.

지정된 실제 디스크 번호와 물리적 오프셋이 볼륨에 속하지 않거나 RAID 패리티 데이터에서 가져온 경우 이 호출은 STATUS_INVALID_PARAMETER 함께 실패합니다.

요구 사항

요구
지원되는 최소 클라이언트 Windows XP부터 사용할 수 있습니다.
헤더 ntddvol.h(Ntddvol.h 포함)

참고 항목

IOCTL_VOLUME_LOGICAL_TO_PHYSICAL

VOLUME_LOGICAL_OFFSET

VOLUME_PHYSICAL_OFFSET

VOLUME_PHYSICAL_OFFSETS