如何获取登录的本地Windows用户列表?
问题描述:
我正在尝试为Windows编写更快的用户切换应用程序。 Win + L和选择用户非常麻烦。如果我以管理员身份启动任务管理器,它会显示活动用户,我可以选择一个并“连接”(如果我输入密码)。如何获取登录的本地Windows用户列表?
如何获取所有用户(或所有活动用户)的列表?
我正在使用C#(Visual Studio Express)。
答
如果你不想与P处理/调用,您可以使用Cassia,它包装丑陋的你:
using Cassia;
foreach (ITerminalServicesSession session in new TerminalServicesManager().GetSessions())
{
if (!string.IsNullOrEmpty(session.UserName))
{
Console.WriteLine("Session {0} (User {1})", session.SessionId, session.UserName);
}
}
正确的URL是http://msdn.microsoft.com /en-us/library/aa383833(VS.85).aspx – djb 2008-10-12 20:42:52
下面显示了如何从C#调用这样的API:http://www.pinvoke.net/default.aspx/wtsapi32/WTSEnumerateSessions.html(感谢Philip Fourie http://*.com/users/11123/philip-fourie) – djb 2008-10-12 20:44:01