Идентификатор пользователя диспетчера задач с использованием C#
Пожалуйста, используйте изображение для получения идентификатора пользователя. Я искал по интернету, но не смог получить ответ. Ниже моя находка, но все же этот идентификатор не приходит.
if (OS.ToUpper().Contains("WINDOWS 10"))
{
Process[] localByName = Process.GetProcessesByName("System");
pid = localByName[0].Id.ToString();
}
else if (OS.ToUpper().Contains("WINDOWS 7"))
{
pid = System.Diagnostics.Process.GetCurrentProcess().SessionId.ToString();
}
1 ответ
Используйте Кассию для получения идентификатора сеанса пользователя.
ITerminalServicesManager manager = new TerminalServicesManager();
using (ITerminalServer server = manager.GetRemoteServer(machineName))
{
server.Open();
foreach (ITerminalServicesSession session in server.GetSessions())
{
if (string.IsNullOrEmpty(session.UserName))
continue;
if (session.UserName.Equals(userName, StringComparison.OrdinalIgnoreCase))
sessionId = session.SessionId;
}
}
попробуй это.