C#创建文件夹并设置权限

原文地址:https://www.cnblogs.com/top5/archive/2010/04/12/1710141.html

/*  
需要添加以下命名空间:  
using System.IO;  
using System.Security.AccessControl;  
*/  
  
string sPath = Server.MapPath(文件夹名称字符串);   
Directory.CreateDirectory(sPath);   
addpathPower(sPath, "ASPNET""FullControl");   
  
//////////////////////////////////////////////////   
  
public void addpathPower(string pathname, string username, string power)   
{   
  
    DirectoryInfo dirinfo = new DirectoryInfo(pathname);   
  
    if ((dirinfo.Attributes & FileAttributes.ReadOnly) != 0)   
    {   
        dirinfo.Attributes = FileAttributes.Normal;   
    }   
  
    //取得访问控制列表   
    DirectorySecurity dirsecurity = dirinfo.GetAccessControl();   
  
    switch (power)   
    {   
        case "FullControl":   
            dirsecurity.AddAccessRule(new FileSystemAccessRule(username, FileSystemRights.FullControl, InheritanceFlags.ContainerInherit, PropagationFlags.InheritOnly, AccessControlType.Allow));   
            break;   
        case "ReadOnly":   
           dirsecurity.AddAccessRule(new FileSystemAccessRule(username, FileSystemRights.Read, AccessControlType.Allow));   
            break;   
        case "Write":   
            dirsecurity.AddAccessRule(new FileSystemAccessRule(username, FileSystemRights.Write, AccessControlType.Allow));   
            break;   
        case "Modify":   
            dirsecurity.AddAccessRule(new FileSystemAccessRule(username, FileSystemRights.Modify, AccessControlType.Allow));   
            break;   
    }   
    dirinfo.SetAccessControl(dirsecurity);   
}

猜你喜欢

转载自www.cnblogs.com/boonya/p/9013559.html