当前位置: 首页 > 编程语言 > C#

如何获取本地Windows用户列表(仅在Windows登录界面显示的用户)Share

时间:2023-04-10 23:31:14 C#

如何获取本地Windows用户列表(仅在Windows登录界面显示的用户)如何获取ListofLocalWindowsUsers(OnlyUsersDisplayedontheWindowsLoginScreen)Windows登录屏幕中显示的用户)我尝试了很多使用WindowsPrinciple库和WMISelect命令。我不断收到admin、guest和其他一些奇怪的帐户(VUSRNEIL-DELL、$HOMEGROUPUSER、ASPNET...等)这3个用户帐户没有显示在登录屏幕上。如何区分这些用户类型?我在C#中编码只需在控制台应用程序中添加对System.Management的引用并尝试此代码:usingSystem;使用系统管理;使用System.Linq;namespaceConsoleApplication5{classProgram{staticvoidMain(string[]args){ManagementObjectSearcherusersSearcher=newManagementObjectSearcher(@"SELECT*FROMWin32_UserAccount");ManagementObjectCollection用户=usersSearcher.Get();varlocalUsers=users.Cast().Where(u=>(bool)u["LocalAccount"]==true&&(bool)u["Disabled"]==false&&(bool)u["Lockout"]==false&&int.Parse(u["SIDType"].ToString())==1&&u["Name"].ToString()!="HomeGroupUser$");foreach(localUsers中的ManagementObject用户){Console.WriteLine("账户类型:"+user["AccountType"].ToString());Console.WriteLine("标题:"+user["标题"].ToString());Console.WriteLine("描述:"+user["描述"].ToString());Console.WriteLine("已禁用:"+user["已禁用"].ToString());Console.WriteLine("域名:"+user["Domain"].ToString());Console.WriteLine("FullName:"+user["FullName"].ToString());Console.WriteLine("LocalAccount:"+user["LocalAccount"].ToString());Console.WriteLine("Lockout:"+user["Lockout"].ToString());Console.WriteLine("Name:"+user["Name"].ToString());Console.WriteLine("密码可更改:"+user["PasswordChangeable"].ToString());Console.WriteLine("密码过期:"+user["PasswordExpires"].ToString());Console.WriteLine("密码必需:"+user["PasswordRequired"].ToString());Console.WriteLine("SID:"+user["SID"].ToString());Console.WriteLine("SIDType:"+user["SIDType"].ToString());Console.WriteLine("Status:"+user["Status"].ToString());}Console.ReadKey();}}}如果使用WMI查询Win32_UserAccount,则只能显示符合以下条件的项目:如果你不能使用WMI(或者你不想使用它)那么你必须做更多的工作,基本上你必须使用NetGroupGetUsers函数来枚举所有用户在CodeProject上看到这个例如文章。如果您想使用打包的解决方案,NuGet有一个“Continuous.Management”包——它是一个开源项目:https://github.com/jarzynam/continuous这将为您提供所有用户帐户、他们的域、列表全名和SID。以上是C#学习教程:如何获取本地Windows用户(仅在Windows登录界面显示的用户)共享的所有内容列表。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注——wmicuseraccountgetdomain,name,sid本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: