如何检查 mstsc.exe 是否已成功建立 RDP 连接?

如何检查 mstsc.exe 是否已成功建立 RDP 连接?

我们使用 mstsc.exe 在批处理文件中与其他服务器建立 RDP 连接,然后在运行某些任务后终止这些连接。这基本上可以正常工作,但有时 mstsc.exe 需要很长时间才能建立连接。有没有办法检查/提示 mstsc 已成功完成链接设置并且可以使用 RDP 连接?

答案1

您可以通过查询目标系统的安全日志来检查 RDP 登录是否成功。登录事件 ID 为 4624,RDP 登录类型为 10。其他登​​录类型https://www.ultimatewindowssecurity.com/securitylog/encyclopedia/event.aspx?eventid=4624

$user2find = "santaClaus"
$target = "server1234"
Get-winevent -comp $target -FilterHashtable @{Logname='security'; ID=4624; starttime=(get-date).addMinutes(-5)} | where {$_.properties[8].value -eq 10 -and $_.properties[5].value -eq $user2find}

答案2

如果您使用批处理文件,那么 netstat 可能是您的首选工具。假设您正在运行mstsc /admin /v:SERVERNAME,您可以在该行后面输入以下命令:

netstat | findstr“ms-wbt-server”

“ms-wbt-server” 表示 RDP 连接,您可以检查 findstr 命令的 %errorlevel% 输出以查看是否找到了该字符串。如果错误级别为 0,则表示找到了该字符串,您可以继续;如果错误级别为 1,则表示未找到该字符串。

相关内容