zoukankan      html  css  js  c++  java
  • 设置文件夹权限问题

    绝对路径:

            protected void Button1_Click(object sender, EventArgs e)
            {
                try
                {
                    string filename = @"E:\k"; //目标目录
                    string account = @"Everyone";//用户名
                    string userrights = @"F";//权限字符串,自己定义的
                    AddDirectorySecurity(filename, account, userrights);
                }
                catch (Exception ex)
                {
                }

            }

            static public void AddDirectorySecurity(string FileName, string Account, string UserRights)
            {
                FileSystemRights Rights = new FileSystemRights();

                if (UserRights.IndexOf("R") >= 0)
                {
                    Rights = Rights | FileSystemRights.Read;
                }
                if (UserRights.IndexOf("C") >= 0)
                {
                    Rights = Rights | FileSystemRights.ChangePermissions;
                }
                if (UserRights.IndexOf("F") >= 0)
                {
                    Rights = Rights | FileSystemRights.FullControl;
                }
                if (UserRights.IndexOf("W") >= 0)
                {
                    Rights = Rights | FileSystemRights.Write;
                }

                bool ok;
                DirectoryInfo dInfo = new DirectoryInfo(FileName);
                DirectorySecurity dSecurity = dInfo.GetAccessControl();
                InheritanceFlags iFlags = new InheritanceFlags();
                iFlags = InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit;
                FileSystemAccessRule AccessRule2 = new FileSystemAccessRule(Account, Rights, iFlags, PropagationFlags.None, AccessControlType.Allow);
                dSecurity.ModifyAccessRule(AccessControlModification.Add, AccessRule2, out ok);

                dInfo.SetAccessControl(dSecurity);
            }

    相对路径:


            protected void Button1_Click(object sender, EventArgs e)
            {
                try
                {
                    string filename = @"WebApplication1"; //(这边是根目录的名称其它可以像后面那样写)目标目录 ~/Account
                    string account = @"Everyone";//用户名
                    string userrights = @"F";//权限字符串,自己定义的
                    AddDirectorySecurity(filename, account, userrights);
                }
                catch (Exception ex)
                {
                }

            }

            static public void AddDirectorySecurity(string FileName, string Account, string UserRights)
            {
                FileSystemRights Rights = new FileSystemRights();

                if (UserRights.IndexOf("R") >= 0)
                {
                    Rights = Rights | FileSystemRights.Read;
                }
                if (UserRights.IndexOf("C") >= 0)
                {
                    Rights = Rights | FileSystemRights.ChangePermissions;
                }
                if (UserRights.IndexOf("F") >= 0)
                {
                    Rights = Rights | FileSystemRights.FullControl;
                }
                if (UserRights.IndexOf("W") >= 0)
                {
                    Rights = Rights | FileSystemRights.Write;
                }

                bool ok;
                DirectoryInfo dInfo = new DirectoryInfo(System.Web.HttpContext.Current.Server.MapPath(FileName));
                if ((dInfo.Attributes & FileAttributes.ReadOnly) != 0)
                {
                    dInfo.Attributes = FileAttributes.Normal;
                }
                DirectorySecurity dSecurity = dInfo.GetAccessControl();
                InheritanceFlags iFlags = new InheritanceFlags();
                iFlags = InheritanceFlags.ContainerInherit | InheritanceFlags.ObjectInherit;
                FileSystemAccessRule AccessRule2 = new FileSystemAccessRule(Account, Rights, iFlags, PropagationFlags.None, AccessControlType.Allow);
                dSecurity.ModifyAccessRule(AccessControlModification.Add, AccessRule2, out ok);

                dInfo.SetAccessControl(dSecurity);
            }

  • 相关阅读:
    springboot---web 应用开发-文件上传
    springboot --> web 应用开发-CORS 支持
    Springboot
    spring boot ---web应用开发-错误处理
    Spring Boot基础教程》 第1节工具的安装和使用
    jQuery第四课 点击 _选项卡效果一
    jQuery第三课 点击按钮 弹出层div效果
    jQuery第二课 点击弹出一个提示框
    jQuery第一课 加载页面弹出一个对话框
    NPIO 导出Execl
  • 原文地址:https://www.cnblogs.com/wujy/p/2332641.html
Copyright © 2011-2022 走看看