DirectorySecurity dSecurity = Directory.GetAccessControl(dirInfo.FullName, AccessControlSections.All);
AuthorizationRuleCollection rules = dSecurity.GetAccessRules(true, true, typeof(System.Security.Principal.NTAccount));
Hashtable rights = new Hashtable();
foreach (FileSystemAccessRule rule in rules)
{
rights[rule.IdentityReference.ToString()] = rule.FileSystemRights;
}
StringBuilder sb = new StringBuilder();
foreach (string key in rights.Keys)
{
sb.Append(key + ":\t" + ((FileSystemRights)rights[key]).ToString() + "\r\n");
}
用上面的代码,在Win7下,只能获得目录的允许权限规则。可是,如果目录设置了拒绝权限,还是不能访问的。如何得到拒绝权限的规则呢?