我需要什么用户权限才能重置文件的FILE_ATTRIBUTE_ARCHIVE属性?

时间:2016-08-25 23:47:21

标签: c++ windows winapi file-permissions ntfs

我使用SetFileAttributes API重置文件的FILE_ATTRIBUTE_ARCHIVE属性。我需要它的应用程序充当备份软件。以下是我的表现方式:

DWORD dwAtt = ::GetFileAttributes(strSrcFilePath);
if(dwAtt != INVALID_FILE_ATTRIBUTES)
{
    if(!::SetFileAttributes(strSrcFilePath, dwAtt & ~FILE_ATTRIBUTE_ARCHIVE))
    {
        //Error
        int error = ::GetLastError();
    }
}

我的流程运行的用户帐户属于Backup Operators组:

enter image description here

根据this document,我应该授予我的进程修改文件的权限,无论他们的权限如何。

但是当我运行上面的代码时,SetFileAttributes会因ERROR_ACCESS_DENIED而失败。

我错过了什么吗?

我是否需要授予我对该文件的进程写入权限以重置其FILE_ATTRIBUTE_ARCHIVE属性?

0 个答案:

没有答案