问题
Is there a way to show only active sessions with wmi? The problem is that Win32_LogonSession shows also inactive/disconnected sessions.
ManagementScope scope = new ManagementScope(ManagementPath.DefaultPath);
SelectQuery query = new SelectQuery("Win32_LogonSession");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
ManagementObjectCollection results = searcher.Get();
foreach (ManagementObject mo in results)
{
PrintWmiObject(mo);
}
The output of this is something like this
AuthenticationPackage - Kerberos
Caption -
Description -
InstallDate -
LogonId - 10179411
LogonType - 10
Name -
StartTime - 20110617083244.547220+120
Status -
回答1:
What about:
SelectQuery query = new SelectQuery("Select * from Win32_LogonSession Where LogonType = 10")
来源:https://stackoverflow.com/questions/6438515/get-active-sessions-with-wmi-win32-logonsession-returns-also-inactive-old-sessi