Partilhar via


Estado de compressão

Cada arquivo e diretório em um volume que suporta compactação para arquivos e diretórios individuais tem um estado de compactação .

Enquanto o atributo de compactação de um arquivo ou diretório indica simplesmente se o arquivo ou diretório está compactado ou não compactado, o estado de compactação também especifica o formato de quaisquer dados compactados.

Use o código de controle FSCTL_GET_COMPRESSION para determinar o estado de compactação de um arquivo ou diretório.

O estado de compressão é codificado como um valor de 16 bits. Um valor de estado de compactação de COMPRESSION_FORMAT_NONE indica que um arquivo não está compactado. Um valor de COMPRESSION_FORMAT_DEFAULT indica que um arquivo está compactado, usando o formato de compactação padrão. Qualquer outro valor indica que um arquivo está compactado, usando o formato de compactação especificado pelo valor do estado de compactação.

Use o código de controle FSCTL_SET_COMPRESSION para definir o estado de compactação de um arquivo ou diretório. Esta operação também define o atributo de compressão do arquivo ou diretório.

Definir o estado de compactação de um arquivo para um valor diferente de zero compacta o arquivo, usando o formato de compactação codificado pelo valor do estado de compactação. Definir o estado de compactação de um arquivo como zero descompacta o arquivo. Estas são operações síncronas. O arquivo é compactado ou descompactado imediatamente quando você define seu estado de compactação.

Definir o estado de compactação de um diretório não causa nenhuma compactação ou descompactação imediata. Em vez disso, definir o estado de compactação de um diretório define um estado de compactação padrão que será dado a todos os arquivos e subdiretórios recém-criados.