다음을 통해 공유


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

추가 정보