Komprimeringstillstånd
Varje fil och katalog på en volym som stöder komprimering för enskilda filer och kataloger har ett komprimeringstillstånd.
Medan komprimeringsattributet för en fil eller katalog helt enkelt anger om filen eller katalogen komprimeras eller inte komprimeras, anger komprimeringstillståndet även formatet för komprimerade data.
Använd FSCTL_GET_COMPRESSION-kontrollkoden för att fastställa komprimeringstillståndet för en fil eller katalog.
Komprimeringstillståndet kodas som ett 16-bitarsvärde. Ett komprimeringstillståndsvärde för COMPRESSION_FORMAT_NONE anger att en fil inte är komprimerad. Värdet COMPRESSION_FORMAT_DEFAULT anger att en fil komprimeras med standardkomprimeringsformatet. Alla andra värden anger att en fil komprimeras med det komprimeringsformat som anges av komprimeringstillståndsvärdet.
Använd FSCTL_SET_COMPRESSION-kontrollkoden för att ange komprimeringstillståndet för en fil eller katalog. Den här åtgärden anger även komprimeringsattributet för filen eller katalogen.
Om du anger komprimeringstillståndet för en fil till ett icke-nollvärde komprimeras filen med hjälp av komprimeringsformatet som kodas av komprimeringstillståndsvärdet. Om du anger en fils komprimeringstillstånd till noll dekomprimerar filen. Det här är synkrona åtgärder. Filen komprimeras eller dekomprimeras omedelbart när du anger dess komprimeringstillstånd.
Om du anger en katalogs komprimeringstillstånd orsakas ingen omedelbar komprimering eller dekomprimering. I stället anger inställningen av en katalogs komprimeringstillstånd ett standardkomprimeringstillstånd som ges till alla nyligen skapade filer och underkataloger.