• 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
  • 相关阅读:
    kettle连接MySQL报错
    git切换到某个tag, 从tag切换回当前分支
    wireshark 实用过滤表达式(针对ip、协议、端口、长度和内容)
    linux下python3.6.7安装
    haproxy backup模式
    Oracle_2 随便写写
    Oracle 日期函数练习 随便写写
    RabbitMQ
    X.509标准、CA认证
    docker-compose和Dockerfile的volumes
  • 原文地址:https://www.cnblogs.com/hyd309/p/1300013.html
Copyright © 2020-2023  润新知