用C#获取Windows用户

Elm*_*mex 8 .net c# windows-users

如何使用.NET(C#)获取本地计算机的所有Windows用户的列表?

IAm*_*rey 8

这是一篇博文(带代码),解释了如何做到这一点:

http://csharptuning.blogspot.com/2007/09/how-to-get-list-of-windows-user-in-c.html

作者列出了以下代码(引自上述网站):

DirectoryEntry localMachine = new DirectoryEntry("WinNT://" + Environment.MachineName);
DirectoryEntry admGroup = localMachine.Children.Find("users","group");
object members = admGroup.Invoke("members", null);
foreach (object groupMember in (IEnumerable)members)
{
    DirectoryEntry member = new DirectoryEntry(groupMember);
    lstUsers.Items.Add(member.Name);
}
Run Code Online (Sandbox Code Playgroud)

您需要using System.DirectoryServices在代码顶部添加 .要更改计算机,您可以将其更改为Environment.MachineName您要访问的任何计算机(只要您有权这样做并且防火墙不会阻止您这样做).我还修改了作者的代码来查看users组而不是administrators组.