FSCTL_GET_COMPRESSION IOCTL(winioctl.h)
파일 시스템이 스트림별 압축을 지원하는 볼륨에서 파일 또는 디렉터리의 현재 압축 상태를 검색합니다.
이 작업을 수행하려면 다음 매개 변수를 사용하여 DeviceIoControl 함수를 호출합니다.
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to file
FSCTL_GET_COMPRESSION, // dwIoControlCode
NULL, // lpInBuffer
0, // nInBufferSize
(LPVOID) lpOutBuffer, // output buffer
(DWORD) nOutBufferSize, // size of output buffer
(LPDWORD) lpBytesReturned, // number of bytes returned
(LPOVERLAPPED) lpOverlapped // OVERLAPPED structure
);
설명
LZNT1 압축 알고리즘은 구현된 유일한 압축 알고리즘입니다.
COMPRESSION_FORMAT_DEFAULT 압축 상태가 아니므로 lpOutBuffer 매개 변수 아래의 테이블에 포함되지 않습니다. 이 값은 FSCTL_SET_COMPRESSION 제어 코드에서만 사용됩니다.
지정된 파일 또는 디렉터리가 포함된 볼륨의 파일 시스템이 파일별 또는 디렉터리별 압축을 지원하지 않으면 작업이 실패합니다.
FSCTL_SET_COMPRESSION 제어 코드를 사용하여 파일 또는 디렉터리의 압축 상태를 설정할 수 있습니다. 이 컨트롤 코드를 사용하여 파일을 압축하거나 압축 해제할 수도 있습니다.
GetFileAttributes 함수를 호출하여 파일 또는 디렉터리의 압축 특성을 검색할 수 있습니다. 압축 특성은 파일 또는 디렉터리가 압축되었는지 여부를 나타냅니다. 압축 상태는 파일 또는 디렉터리가 압축되었는지 여부와 압축된 데이터의 형식을 나타냅니다.
Windows 8 및 Windows Server 2012 이 코드는 다음 기술에서 지원됩니다.
기술 | 지원됨 |
---|---|
SMB(서버 메시지 블록) 3.0 프로토콜 | Yes |
SMB 3.0 TFO(투명 장애 조치(failover)) | No |
SO(스케일 아웃 파일 공유)를 사용하는 SMB 3.0 | No |
CsvFS(클러스터 공유 볼륨 파일 시스템) | Yes |
ReFS(Resilient File System) | No |
SMB 3.0 투명한 장애 조치(failover) 및 Scale-Out NTFS 압축 파일을 지원하지 않습니다. FSCTL 호출은 차단되지 않지만 지원되지 않습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
머리글 | winioctl.h(Windows.h 포함) |