以编程方式获取Windows用户帐户的数量

3 c#

我需要一种方法来获取(Windows)计算机上所有用户帐户的列表,我需要通过C#.NET 1.1 + 2003获取此信息

Dir*_*mar 7

您可以使用WMI枚举本地用户和组:

class Program
{
    static void Main(string[] args)
    {
        SelectQuery sQuery = new SelectQuery("Win32_UserAccount", "Domain='mypcname'");

        try
        {
            ManagementObjectSearcher mSearcher = new ManagementObjectSearcher(sQuery);

            Console.WriteLine("User Accounts");
            Console.WriteLine();

            foreach (ManagementObject mObject in mSearcher.Get())
            {
                Console.WriteLine("Account {0}", mObject["Name"]);
                foreach (PropertyData prop in mObject.Properties)
                {
                    Console.WriteLine("Name: {0}\tValue: {1}", prop.Name, prop.Value);
                }
                Console.WriteLine();
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.ToString());
        }

        Console.ReadKey();
    }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码需要引用System.Management,您需要将"mypcname"替换为您的机器名称.