Команды служб терминалов, доступные в пространстве имен.NET?
Существуют ли.NET-команды, эквивалентные командам служб терминалов 'QWINSTA', 'RWINSTA' и 'TSDISCON'?
Спасибо
1 ответ
Решение
В настоящее время нет аналога.NET / управляемого API. Вы, вероятно, можете использовать функции в wtsapi32.dll, хотя. Посмотрите на pinvoke.net несколько примеров того, как вызывать их из управляемого кода... начиная со следующего:
Или, если вы не хотите накатывать свою собственную оболочку Win32, посмотрите проект " Кассия". Я не использовал его и поэтому не могу поручиться за качество этого решения, однако, похоже, что это библиотека.NET, используемая для доступа к собственному API-интерфейсу Windows Terminal Services.
Ниже приведен пример того, как вы будете использовать библиотеку cassia в C# (взято с сайта проекта):
ITerminalServicesManager manager = new TerminalServicesManager();
using (ITerminalServer server = manager.GetRemoteServer("your-server-name"))
{
server.Open();
foreach (ITerminalServicesSession session in server.GetSessions())
{
Console.WriteLine("Session ID: " + session.SessionId);
Console.WriteLine("User: " + session.UserAccount);
Console.WriteLine("State: " + session.ConnectionState);
Console.WriteLine("Logon Time: " + session.LoginTime);
}
}