C# 以编程方式获取Windows用户帐户的数量
我需要一种方法来获取(Windows)计算机上所有用户帐户的列表,我需要通过C#.NET 1.1+2003获取此信息您可以使用WMI枚举本地用户和组:C# 以编程方式获取Windows用户帐户的数量,c#,C#,我需要一种方法来获取(Windows)计算机上所有用户帐户的列表,我需要通过C#.NET 1.1+2003获取此信息您可以使用WMI枚举本地用户和组: class Program { static void Main(string[] args) { SelectQuery sQuery = new SelectQuery("Win32_UserAccount", "Domain='mypcname'"); try {
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();
}
}
上面的代码需要对System.Management的引用,您需要将“mypcname”替换为您的计算机名。您需要使用WMI来获取所需的信息 添加对System.Management的引用,下面的代码将完全满足您的需要:)
“在一个系统中”是什么意思?什么系统?什么系统上的用户帐户?您正在开发的系统或主机环境(计算机、域等)?您是指本地用户吗?
using System;
using System.Management;
namespace ConsoleApplication5
{
class Program
{
static void Main(string[] args)
{
ManagementObjectSearcher mos = new ManagementObjectSearcher("Select * from Win32_UserAccount Where LocalAccount = True");
ManagementObjectCollection results = mos.Get();
foreach (ManagementObject user in results)
{
Console.WriteLine("Account Type: " + user["AccountType"].ToString());
Console.WriteLine("Caption: " + user["Caption"].ToString());
Console.WriteLine("Description: " + user["Description"].ToString());
Console.WriteLine("Disabled: " + user["Disabled"].ToString());
Console.WriteLine("Domain: " + user["Domain"].ToString());
Console.WriteLine("Full Name: " + user["FullName"].ToString());
Console.WriteLine("Local Account: " + user["LocalAccount"].ToString());
Console.WriteLine("Lockout: " + user["Lockout"].ToString());
Console.WriteLine("Name: " + user["Name"].ToString());
Console.WriteLine("Password Changeable: " + user["PasswordChangeable"].ToString());
Console.WriteLine("Password Expires: " + user["PasswordExpires"].ToString());
Console.WriteLine("Password Required: " + user["PasswordRequired"].ToString());
Console.WriteLine("SID: " + user["SID"].ToString());
Console.WriteLine("SID Type: " + user["SIDType"].ToString());
Console.WriteLine("Status: " + user["Status"].ToString());
}
Console.ReadKey();
}
}
}