Идентификатор пользователя диспетчера задач с использованием 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;
                }
            }

попробуй это.

Другие вопросы по тегам