3

Я управляю экземплярами Windows Server 2016 с рабочего стола Windows 10 Pro с помощью подключения к удаленному рабочему столу. Когда я перезагружаю сервер, подключение к удаленному рабочему столу закрывается, и мне нужно пропинговать компьютер, пока я не узнаю, что он снова работает и готов к повторному подключению.

Могу ли я сделать так, чтобы Remote Desktop Connection сделал это для меня? Все, чего я ожидаю, это то, что окно будет оставаться открытым и периодически будет пытаться переподключаться каждые несколько секунд, пока соединение не будет восстановлено.

1 ответ1

1

Насколько я знаю, это невозможно. В RDP есть параметр автоматического переподключения, но он работает только в том случае, если соединение было разорвано из-за проблем с сетью и т.д., Но сам отключенный сеанс RDP все еще доступен на сервере. Когда вы перезапускаете сервер через RDP, сеанс полностью закрывается, и поэтому клиент "знает", что для него не существует никакого сеанса на сервере.

Возможный обходной путь - написать простой сценарий для этого сценария. Как в Powershell:

While($i -ne 1) {
    Start-Process -FilePath "test.rdp" -Wait;
}

Это перезапускает RDP-соединение (точнее, оно запускает совершенно новое) после его закрытия до тех пор, пока вы не остановите скрипт (нажав Ctrl+C или нажав кнопку Стоп в Powershell ISE).

Вы можете объединить его с сетевым пингом до фактического запуска соединения RDP и некоторыми выходными данными, чтобы узнать, что происходит в данный момент.

Try {
    Write-Host "Press CTRL+C to stop the script.";
    While($i -ne 1) {
        Write-Host "Pinging server...";
        If (Test-Connection -ComputerName rdp-server.local -Count 1 -ErrorAction SilentlyContinue) {
            Write-Host "Ping OK. Starting RDP connection...";
            Start-Process -FilePath "test.rdp" -Wait;
            Write-Host "RDP connection closed. Restarting...";
        } Else {
            Write-Host "Ping failed. Retry...";
        }
    }
} Finally {
    Write-Host "CTRL+C pressed. Bye!";
}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .