曲径通幽论坛

标题: SetFileAttributes() -- 设置文件属性 [打印本页]

作者: beyes    时间: 2012-2-17 12:59
标题: SetFileAttributes() -- 设置文件属性
SetFileAttributes() 原型如下:
[C++] 纯文本查看 复制代码
BOOL WINAPI SetFileAttributes(
  __in  LPCTSTR lpFileName,
  __in  DWORD dwFileAttributes
);

该函数用来设置文件属性。

第 1 个参数 lpFileName 是需要设置属性的文件或目录。

第  2 个参数 dwFileAttributes 是文件属性值。

函数返回非零值表示成功,否则失败。

文件系统中对文件属性使用 DWORD 类型表示,因此多个文件属性可用 “|” 符号对多个属性值连接起来。

获取文件属性使用  GetFileAttributes()  或 GetFileAttributesEx()  函数。

测试代码
[C++] 纯文本查看 复制代码
#include "stdafx.h"


int _tmain(int argc, _TCHAR* argv[])
{
    DWORD dwFileAtts = GetFileAttributes (argv[1]);

    dwFileAtts |= FILE_ATTRIBUTE_HIDDEN;
    dwFileAtts |= FILE_ATTRIBUTE_READONLY;

    if (SetFileAttributes(argv[1], dwFileAtts)) {
        _tprintf (TEXT("设置文件“只读”和“隐藏”属性成功!\n"));
    } else {
        _tprintf (TEXT("设置失败:%d\n", GetLastError()));
        return (-1);
    }
    return 0;
}

在运行该程序之前先在资源管理器里查看一下该文件的“只读”和“隐藏”属性:
[attach]218[/attach]
接着运行程序试图增加这两项属性:
[attach]219[/attach]
从上面可以看到,两个选项都打勾了。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2