我使用远程桌面连接从 Windows 10 Pro 桌面管理 Windows Server 2016 实例。当我重新启动服务器时,远程桌面连接会关闭,我必须 ping 计算机,直到我知道它已恢复并准备好再次连接。
我可以让远程桌面连接帮我完成这个任务吗?我期望的是窗口保持打开状态并每隔几秒定期尝试重新连接,直到重新建立连接。
答案1
据我所知,这是不可能的。RDP 中有一个自动重新连接参数,但该参数仅在由于网络问题等原因导致连接断开但断开的 RDP 会话本身在服务器上仍然可用时才有效。当您通过 RDP 重新启动服务器时,会话将完全关闭,因此客户端“知道”服务器上没有任何会话。
一种可能的解决方法是针对这种情况编写一个简单的脚本。例如在 Powershell 中:
While($i -ne 1) {
Start-Process -FilePath "test.rdp" -Wait;
}
这会在关闭后重新启动 RDP 连接(更准确地说,它会启动一个全新的连接),直到您停止脚本(按 Ctrl+C 或单击 Powershell ISE 中的停止按钮)。
您可以在实际启动 RDP 连接之前将其与网络 ping 结合起来,并通过一些输出来了解某一时刻发生的情况。
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!";
}