一个文件的属性->安全->高级,有个所有者的属性
请问我如何通过C#编程,获得这个文件的所有者。
多谢

解决方案 »

  1.   

    看一下fileSecurity和SecurityIdentifier这两个类吧
      

  2.   

    供参考:
    using System;
    using System.Text;
    using System.IO;
    using System.Data;
    using System.Diagnostics;
    using System.Collections;
    using System.Security.AccessControl;
    using System.Security.Principal;namespace ConsoleApplication1
    {
        class ConsoleTest
        {
            public static void Main()
            {
                try
                {
                 //   NTAccount account = new NTAccount("user01");
                    DirectoryInfo dInfo = new DirectoryInfo("c:\\1.txt");
                    DirectorySecurity oDirectorySecurity = dInfo.GetAccessControl(AccessControlSections.Owner);                //SecurityIdentifier sid2 = (SecurityIdentifier)oDirectorySecurity.GetOwner(typeof(SecurityIdentifier)); //文件夹的所有者SID
                    //Console.WriteLine(sid2.ToString());                NTAccount account2 = (NTAccount)oDirectorySecurity.GetOwner(typeof(NTAccount));                Console.WriteLine(account2.ToString());                //oDirectorySecurity.SetOwner(account);
                    //dInfo.SetAccessControl(oDirectorySecurity);            }
                catch (Exception e)
                {                Console.WriteLine(e.ToString());
                }            Console.ReadLine();
            }
        }
    }
      

  3.   

    只有格式为nft的分区上的文件有安全属性
      

  4.   

    try..using System.IO;
    using System.Security.AccessControl;
    using System.Security.Principal;            DirectorySecurity security = new DirectorySecurity(@"C:\test", AccessControlSections.Owner);
                Console.WriteLine(security.GetOwner(typeof(NTAccount)).Value);