Atributo de compresión

En un volumen del sistema de archivos NTFS, cada archivo y directorio tiene un atributo de compresión. Otros sistemas de archivos también pueden implementar un atributo de compresión para archivos y directorios individuales.

Puede determinar si un sistema de archivos admite un atributo de compresión para archivos y directorios llamando a la función GetVolumeInformation y examinando la marca de bits de FILE_FILE_COMPRESSION .

Use la función GetFileAttributes o GetFileAttributesEx para determinar el atributo de compresión de un archivo o directorio.

Si se establece el atributo de compresión de un archivo (FILE_ATTRIBUTE_COMPRESSED), se comprimen todos los datos del archivo. Si el atributo está claro, ninguno de los datos del archivo se comprime. No hay ningún estado parcialmente comprimido desde una perspectiva de programación en modo de usuario; el atributo de compresión es un indicador booleano simple de estado de compresión.

El atributo de compresión de un directorio proporciona un atributo de compresión predeterminado para los archivos y subdirectorios recién creados. Cuando se llama a CreateFile o CreateDirectory para crear un nuevo archivo o directorio, el nuevo archivo o directorio hereda el atributo de compresión de su directorio primario.

Para modificar el atributo FILE_ATTRIBUTE_COMPRESSED para un archivo o directorio, debe usar la función DeviceIoControl con el código de control FSCTL_SET_COMPRESSION .

Constantes de atributo de archivo