다음을 통해 공유


FSCTL_GET_RETRIEVAL_POINTERS IOCTL(winioctl.h)

파일 핸들이 지정된 경우 디스트에서 특정 파일의 할당 및 위치를 설명하는 데이터 구조를 검색하거나 볼륨 핸들이 지정된 경우 볼륨에서 잘못된 클러스터의 위치를 검색합니다.

이 작업을 수행하려면 다음 매개 변수를 사용하여 DeviceIoControl 함수를 호출합니다.

DeviceIoControl(
  (HANDLE) hDevice,                 // handle to file, directory, or volume
  FSCTL_GET_RETRIEVAL_POINTERS,     // dwIoControlCode
  (LPVOID) lpInBuffer,              // input buffer
  (DWORD) nInBufferSize,            // size of input buffer
  (LPVOID) lpOutBuffer,             // output buffer
  (DWORD) nOutBufferSize,           // size of output buffer
  (LPDWORD) lpBytesReturned,        // number of bytes returned
  (LPOVERLAPPED) lpOverlapped       // OVERLAPPED structure
);

설명

FSCTL_GET_RETRIEVAL_POINTERS 작업은 특정 파일의 디스크에 할당 및 위치를 설명하는 고정 크기 데이터 구조를 검색합니다. 구조체는 가상 클러스터 번호(파일 또는 스트림 공간 내의 VCN 오프셋)와 논리 클러스터 번호(볼륨 공간 내의 LCN 오프셋) 간의 매핑을 설명합니다.

FSCTL_GET_RETRIEVAL_POINTERS 제어 코드는 NTFS, FAT, exFAT, UDF 및 ReFS 파일 시스템에서 파일 또는 디렉터리 작업에 대해 지원됩니다.

지원되는 파일 시스템에서 FSCTL_GET_RETRIEVAL_POINTERS 작업은 비거주 데이터의 익스텐트 위치를 반환합니다. 상주 데이터에는 익스텐트 위치가 없습니다.

FSCTL_GET_RETRIEVAL_POINTERS 제어 코드는 잘못된 클러스터를 찾는 대체 기능도 지원합니다. NTFS, FAT 또는 exFAT 형식의 볼륨에서 잘못된 클러스터의 위치를 쿼리하려면 볼륨 핸들을 hDevice 매개 변수로 사용합니다. 이 기능은 NTFS, FAT 및 exFAT에서만 지원되며 호출자에게 볼륨에 대한 MANAGE_VOLUME_ACCESS 권한이 있어야 합니다.

이 작업에 겹치는 I/O의 의미는 DeviceIoControl 항목의 설명 섹션을 참조하세요.

Windows 8 및 Windows Server 2012 이 코드는 다음 기술에서 지원됩니다.

기술 지원됨
SMB(서버 메시지 블록) 3.0 프로토콜 No
SMB 3.0 TFO(투명 장애 조치(failover)) No
SO(스케일 아웃 파일 공유)를 사용하는 SMB 3.0 No
CsvFS(클러스터 공유 볼륨 파일 시스템) Yes

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
머리글 winioctl.h(Windows.h 포함)

추가 정보