FILE_COMPRESSION_INFORMATION 结构 (ntifs.h)
FILE_COMPRESSION_INFORMATION 结构描述压缩数据缓冲区的状态。
语法
typedef struct _FILE_COMPRESSION_INFORMATION {
LARGE_INTEGER CompressedFileSize;
USHORT CompressionFormat;
UCHAR CompressionUnitShift;
UCHAR ChunkShift;
UCHAR ClusterShift;
UCHAR Reserved[3];
} FILE_COMPRESSION_INFORMATION, *PFILE_COMPRESSION_INFORMATION;
成员
CompressedFileSize
压缩文件的大小(以字节为单位)。
CompressionFormat
压缩格式。 此成员必须具有以下值之一:
值 | 含义 |
---|---|
COMPRESSION_FORMAT_NONE | 无压缩格式。 |
COMPRESSION_FORMAT_DEFAULT | 默认压缩格式。 |
COMPRESSION_FORMAT_LZNT1 | LZNT1 压缩格式。 |
CompressionUnitShift
每个压缩的群集数的对数(基数 2)
单位。 在 NTFS 文件系统中,此值NTFS_CLUSTERS_PER_COMPRESSION。
ChunkShift
区块中字节数的日志(以 2 为底)。 换句话说,区块的大小(以字节为单位)为 2 ** ChunkShift,或 (1 <<个 ChunkShift) 。
ClusterShift
压缩必须减小压缩单元大小的最小群集数的基数 2。 如果压缩不能将压缩单元的大小至少减少 2 个 ** ClusterShift 群集 (或 1 << 个 ClusterShift 群集) ,则不会进行压缩。 每个压缩单元占用的群集必须至少比未压缩数据占用的群集少一个。
Reserved[3]
预留
要求
要求 | 值 |
---|---|
Header | ntifs.h (包括 Ntifs.h、Fltkernel.h) |