zoukankan      html  css  js  c++  java
  • c#中为文件夹设置权限

    <summary>
     2        /// 为创建的临时文件分配权限
     3        /// </summary>
     4        /// <param name="pathname"></param>
     5        /// <param name="username"></param>
     6        /// <param name="power"></param>
     7        /// <remarks>SKY 2007-8-6</remarks>
     8        public void addpathPower(string pathname, string username, string power)
     9        {
    10
    11            DirectoryInfo dirinfo = new DirectoryInfo(pathname);
    12
    13            if ((dirinfo.Attributes & FileAttributes.ReadOnly) != 0)
    14            {
    15                dirinfo.Attributes = FileAttributes.Normal;
    16            }

    17
    18            //取得访问控制列表
    19            DirectorySecurity dirsecurity = dirinfo.GetAccessControl();
    20
    21            switch (power)
    22            {
    23                case "FullControl":
    24                    dirsecurity.AddAccessRule(new FileSystemAccessRule(username, FileSystemRights.FullControl, InheritanceFlags.ContainerInherit, PropagationFlags.InheritOnly, AccessControlType.Allow));
    25                    break;
    26                case "ReadOnly":
    27                    dirsecurity.AddAccessRule(new FileSystemAccessRule(username, FileSystemRights.Read, AccessControlType.Allow));
    28                    break;
    29                case "Write":
    30                    dirsecurity.AddAccessRule(new FileSystemAccessRule(username, FileSystemRights.Write, AccessControlType.Allow));
    31                    break;
    32                case "Modify":
    33                    dirsecurity.AddAccessRule(new FileSystemAccessRule(username, FileSystemRights.Modify, AccessControlType.Allow));
    34                    break;
    35            }

    36        }

    DirectoryInfo是需要实例化的,而且实例化的时候必须指定文件夹路径,Directory则是静态类.

    主程序中调用的写法:
    1private void CreateDirectory()
    2{
    3   
    4   addpathPower(sPath, "ASPNET""FullControl");
    5   
    6}
       一般来说 Username 选用 ASPNET
  • 相关阅读:
    Openfire 集群部署和负载均衡方案
    python读取excel一例-------从工资表逐行提取信息
    基本运算
    c语言知识点2
    c语言知识点1
    .NET核心代码保护策略-隐藏核心程序集
    写给那些对破解有偏执的人
    .NET P****** CMS 逆向工程
    WPF多语言化的实现
    AvalonDock 2.0+Caliburn.Micro+MahApps.Metro实现Metro风格插件式系统(菜单篇)
  • 原文地址:https://www.cnblogs.com/hyd309/p/1300013.html
Copyright © 2011-2022 走看看