在MSDN 中,文件总共有15 种属性,根据磁盘的分区格式不同,文件的属性也会不同。
现在针对 GetFileAttributes 函数 的返回值做以下整理
返回字段 |
返回值 |
属性类型 |
FILE_ATTRIBUTE_READONLY |
1 |
只读 |
FILE_ATTRIBUTE_HIDDEN |
2 |
隐藏 |
FILE_ATTRIBUTE_SYSTEM |
4 |
系统 |
FILE_ATTRIBUTE_DIRECTORY |
16 |
目录 |
FILE_ATTRIBUTE_ARCHIVE |
32 |
存档 |
FILE_ATTRIBUTE_DEVICE |
64 |
保留 |
FILE_ATTRIBUTE_NORMAL |
128 |
正常 |
FILE_ATTRIBUTE_TEMPORARY |
256 |
临时 |
FILE_ATTRIBUTE_SPARSE_FILE |
512 |
稀疏文件 |
FILE_ATTRIBUTE_REPARSE_POINT |
1024 |
超链接或快捷方式 |
FILE_ATTRIBUTE_COMPRESSED |
2048 |
压缩 |
FILE_ATTRIBUTE_OFFLINE |
4096 |
脱机 |
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED |
8192 |
索引 |
FILE_ATTRIBUTE_ENCRYPTED |
16384 |
加密 |
FILE_ATTRIBUTE_VIRTUAL |
65536 |
虚拟 |
橙色标记的属性为 Windows 系统中文件的公有属性,其中 “ 只读 ” 、 “ 隐藏 ” 、 “ 系统 ” 、 “ 存档 ” 为文件的四种基本属性。 compressed , content_indexed , encrypted 只存在于 NTFS 分区中。
文件去掉全部属性后(四种基本属性),将自动标记为 normal 。同时具有 system 和 hidden 属性的文件会在系统中彻底隐形,这也是病毒常用的伎俩。
commpressed 和 encrypted 不能共存。默认情况下文件都有 content_indexed 属性。