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 포함) |