gpt4 book ai didi

c# - 更改文件夹权限

转载 作者:行者123 更新时间:2023-11-30 12:14:09 25 4
gpt4 key购买 nike

我想将某些文件夹权限(设置为只读)更改为 ReadWriteExecute!

我写了这段代码,但是文件夹权限还是只读:

private void ChangePermissions(string folder)
{
string userName = Environment.UserName;

FileSystemAccessRule accessRule = new FileSystemAccessRule(userName, FileSystemRights.FullControl, InheritanceFlags.ContainerInherit
| InheritanceFlags.ObjectInherit, PropagationFlags.None, AccessControlType.Allow);

DirectoryInfo directoryInfo = new DirectoryInfo(folder);
DirectorySecurity directorySec = directoryInfo.GetAccessControl();


directorySec.AddAccessRule(accessRule);
directoryInfo.SetAccessControl(directorySec);
}

如果我想用 Directory.Delete(folder, true) 删除这个目录,我会得到这个错误信息:

"Access to the path 'entries' is denied."

当然,权限仍然是只读的!

这里有什么问题吗?

最佳答案

你可以尝试这样的事情:

var dirInfo = new DirectoryInfo(folder);
dirInfo.Attributes &= ~FileAttributes.ReadOnly;

这使用按位逻辑与运算符 (&=)FileAttributes.ReadOnly 的逆向附加到现有的 Attributes 属性(因为 ~ 是按位非)。

关于c# - 更改文件夹权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10175270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com