编程时经常需要某些文件拥有特定的属性,譬如隐藏属性。下面介绍一个实现此功能的函数:SetFileAttributes。

函数原型:

函数原型


BOOL SetFileAttributes(
LPCTSTR lpFileName,                      
// lpFileName的对象指向一个字符串,指定其属性要设置的文件的名称。例如"C:\\Config.ini"
DWORD dwFileAttributes
// 文件属性
 );

属性:

Attribute

Meaning

FILE_ATTRIBUTE_ARCHIVE

该文件是一个存档文件。应用程序使用此属性来备份或移除标记文件。

FILE_ATTRIBUTE_HIDDEN

该文件是隐藏的。它不包括在普通的目录列表。

FILE_ATTRIBUTE_NORMAL

该文件没有设置其他的属性。此属性仅在单独使用有效。

FILE_ATTRIBUTE_NOT_CONTENT_INDEXED

该文件将不被内容索引服务编制索引。

FILE_ATTRIBUTE_OFFLINE

该文件的数据不是立即可用。此属性表明文件数据被物理移动到离线存储。此属性用于通过远程存储,分层存储管理软件。应用程序不应随意更改此属性。

FILE_ATTRIBUTE_READONLY

该文件是只读的。应用程序可以读取该文件,但不能写入或删除它。

FILE_ATTRIBUTE_SYSTEM

该文件是操作系统的一部分,或者完全由它使用。

FILE_ATTRIBUTE_TEMPORARY

该文件是被用于暂时存储。文件系统避免写入数据传回海量存储如果有足够的缓存内存可用,因为经常在应用程序删除后不久,这个句柄被关闭的临时文件。在这种情况下,该系统可以完全避免记录的数据。否则,在手柄关闭的数据将被写入。


返回值:如果函数成功,返回值是非0。如果函数调用失败,返回值是零。若想获得更多的错误信息,调用GetLastError。