1. 取得系统帐号列表
2. 取得某个文件夹的所有帐号的权限列表,就是一个文件夹有N个帐号可以访问,取每个帐号的权限列表本人对系统操作不是很熟悉,希望得到各位的指点

解决方案 »

  1.   

    关于第二点:using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    using System.Security.AccessControl;
    using System.Security.Principal;namespace DirectoryInfoTest
    {
        class Program
        {
            static void Main(string[] args)
            {            #region 变量定义
                string strFolderPath = "";
                DirectoryInfo dirInfo = null;
                DirectorySecurity dirSec = null;
                int i = 0;
                #endregion            try
                {                dirInfo = new DirectoryInfo(@"D:\CodeSmith");
                    dirSec = dirInfo.GetAccessControl();                // 获取ACL里的ACEs
                    i = 0;
                    foreach (FileSystemAccessRule rule in dirSec.GetAccessRules(true, true, typeof(NTAccount)))
                    {
                        Console.WriteLine("[{0}] - Rule {1} {2} access to {3}",
                        i++,
                        rule.AccessControlType == AccessControlType.Allow ? "grants" : "denies",
                        rule.FileSystemRights,
                        rule.IdentityReference.ToString());
                    }
                }
                catch (Exception ex)
                {
                    Console.Write("EXCEPTION: ");
                    Console.WriteLine(ex.Message);
                }
                Console.WriteLine("\n<>");
                Console.Read();
            }
        }
    }