Bagikan melalui


FSCTL_GET_COMPRESSION IOCTL (winioctl.h)

Mengambil status kompresi file atau direktori saat ini pada volume yang sistem filenya mendukung kompresi per aliran.

Untuk melakukan operasi ini, panggil fungsi DeviceIoControl dengan parameter berikut.

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
);

Keterangan

Algoritma kompresi LZNT1 adalah satu-satunya algoritma kompresi yang diterapkan.

COMPRESSION_FORMAT_DEFAULT bukan status pemadatan sehingga tidak disertakan dalam tabel di bawah parameter lpOutBuffer . Nilai ini hanya digunakan dengan kode kontrol FSCTL_SET_COMPRESSION .

Jika sistem file volume yang berisi file atau direktori yang ditentukan tidak mendukung kompresi per file atau per direktori, operasi gagal.

Anda dapat mengatur status pemadatan file atau direktori dengan menggunakan kode kontrol FSCTL_SET_COMPRESSION . Anda juga dapat memadatkan atau menghapus kompresi file menggunakan kode kontrol ini.

Anda dapat mengambil atribut kompresi file atau direktori dengan memanggil fungsi GetFileAttributes . Atribut kompresi menunjukkan apakah file atau direktori dikompresi. Status pemadatan menunjukkan apakah file atau direktori dikompresi, dan, jika ya, format data terkompresi.

Di Windows 8 dan Windows Server 2012, kode ini didukung oleh teknologi berikut.

Teknologi Didukung
Protokol Server Message Block (SMB) 3.0 Ya
SMB 3.0 Transparent Failover (TFO) Tidak
SMB 3.0 dengan Berbagi File Peluasan Skala (SO) Tidak
Sistem File Volume Bersama Kluster (CsvFS) Ya
Sistem File Tangguh (ReFS) Tidak

Failover Transparan SMB 3.0 dan Scale-Out tidak mendukung file terkompresi NTFS. Panggilan FSCTL tidak diblokir, tetapi tidak didukung.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Header winioctl.h (termasuk Windows.h)

Lihat juga