Мне нужен какой-то скрипт, чтобы иметь возможность убивать терминальные сеансы на нашем сервере.
Обычно некоторые пользователи подключаются через приложение через службы терминалов. Когда они закрывают приложение, это обычно вызывает отключение и закрытие служб терминалов.
В некоторых случаях пользователи вместо закрытия приложения закрывают службу терминала. Это оставляет сеанс терминала зависшим, поскольку приложение все еще работает.
Есть ли доступный сценарий, который мог бы обнаруживать эти зависшие службы терминалов, включая приложение, работающее внутри него?
Ценю любую помощь в этом. Спасибо.
Пожалуйста, попробуйте следующий сценарий:
REM @echo off
REM This batch file will read a list of computers in 'computers.txt', query (qwinsta)
REM the sessions that are currenlty disconnected, then pass them to
REM reset them using (rwinsta). It might not be as graceful as a logoff
REM but it works.
REM Mike Stone
REM 06/19/2008
For /F %%A in (computers.txt) do (
for /f "tokens=2" %%i in ('qwinsta /SERVER:%%A ^| find /i "disc"') do echo %%i | rwinsta %%i /SERVER:%%A /V
)
Используйте тайм-аут простоя и тайм-аут отключения в службах терминалов.
Предполагая, что вы используете службы терминалов в домене (и даже если это не так), существует ряд параметров GPO (или локальных параметров) для управления сеансами RDP. Похоже, использование этих настроек предпочтительнее изобретения велосипеда. Зачем писать и запускать сценарий, если вы можете настроить групповую политику так, чтобы она выполняла всю работу за вас?