none
尝试执行未经授权的操作。 RRS feed

  • 问题

  •       string _path = @"C:\Windows\System32";
          DirectoryInfo dInfo = new DirectoryInfo(_path);
          DirectorySecurity dSecurity = dInfo.GetAccessControl();
          dSecurity.AddAccessRule(new FileSystemAccessRule("Everyone", FileSystemRights.FullControl, AccessControlType.Allow));
    
          dInfo.SetAccessControl(dSecurity);
    

    是 winform 程序。

    到最后一句,执行失败,错误信息如下:

    尝试执行未经授权的操作。

    2010年10月22日 9:21

答案

  • 这个问题可能是因为运行该程序的用户凭据没有 System32 目录的完全控制权限。一般,在 Windows Vista 之后的系统,只有 SYSTEM 用户具备该目录的完全访问权限。

    要检查是不是此问题导致异常,请在 System32 目录上单击鼠标右键,选择属性,在安全选项卡中单击高级,在所有者选项卡中查看自己是否为所有者,并检查安全选项卡中的 Administrators 是否为完全控制。

    我强烈建议您不要对 system32 等 Windows 系统目录进行 ACL 的修改操作,这会导致 Windows 系统的安全性毫无保障。


    Mark Zhou
    2010年10月22日 9:41