class ACLtest
    {
        public void ACL(string myFilePath) {            try {  
                using(FileStream fs = new FileStream(myFilePath,FileMode.Open,FileAccess.ReadWrite)){
                    FileSecurity fileSec = fs.GetAccessControl();
                    FileSystemAccessRule fileRule;
                    AuthorizationRuleCollection arc = fileSec.GetAccessRules(true, true, typeof(System.Security.Principal.NTAccount));
                    fileRule = (FileSystemAccessRule)arc[arc.Count-1];
                    foreach (FileSystemAccessRule r in fileSec.GetAccessRules(true,true,typeof(NTAccount)))
                    {
                      Console.WriteLine("{0}:{1}:{2}",r.AccessControlType ==AccessControlType.Allow?"provides":"denies",r.FileSystemRights,r.IdentityReference.ToString());
                    }
                    //fileSec.RemoveAccessRule(fileRule);
                    fileSec.RemoveAccessRuleAll(fileRule);                    File.SetAccessControl(myFilePath,fileSec);
                    Console.WriteLine("---------------------");
                    foreach (FileSystemAccessRule r in fileSec.GetAccessRules(true,true,typeof(NTAccount)))
                    {
                      Console.WriteLine("{0}:{1}:{2}",r.AccessControlType ==AccessControlType.Allow?"provides":"denies",r.FileSystemRights,r.IdentityReference.ToString());
                    }
                }            }catch(Exception ex){
                Console.WriteLine(ex.Message);
            }
        }
    }
帮忙看看,为什么权限删不掉,谢谢!