【发布时间】:2016-01-12 19:56:25
【问题描述】:
我正在尝试使用下面的代码让所有用户都能够修改文件夹:
class Program
{
private const string FileName = "test.txt";
private static readonly string FilePath = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + "\\TEST\\" + FileName;
private static readonly string UserName = Environment.UserDomainName;
static void Main()
{
DirectorySecurity securityRules = new DirectorySecurity();
string dirPath = Path.GetDirectoryName(FilePath);
securityRules.AddAccessRule(new FileSystemAccessRule("Users", FileSystemRights.Modify, AccessControlType.Allow));
if (dirPath == null) throw new InvalidOperationException("Failure to save local security settings");
if (!Directory.Exists(dirPath)) Directory.CreateDirectory(dirPath, securityRules);
File.WriteAllText(FilePath, "Test test!");
}
}
运行代码后,用户被添加到文件夹中,但没有分配任何权限。所有的读、写、执行等所有的复选框都没有选中。除非检查了特殊权限。
如何为所有用户添加一个包含所有修改的文件夹?
【问题讨论】: