如何将用户名和密码发送到远程桌面(RDP)弹出窗口

问题描述 投票:2回答:2

考虑:

Dim WSHShell

Set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.Run "MSTSC /v:servername"

WScript.Quit

我可以打开RDP弹出窗口并提供要连接的服务器名称。我需要提供用户名,密码,然后单击“确定”。有没有办法从VBScript实现这一目标?

vbscript hp-uft rdp
2个回答
4
投票

您可以使用以下代码:

Dim objShell, strMachineName, strUserName, strUserPwd
set objShell = createObject("wscript.shell")
strMachineName = "enter-machine-name"
strUserName = "enter-your-user-name"
strUserPwd = "enter-user-password"
objShell.Run "cmdkey /generic:"&strMachineName&" /user:"&strUserName&" /pass:"&strUserPwd
objShell.run "mstsc /v: "&strMachineName
set objShell = Nothing

Referencecmdkey

我在Windows 7上测试了这个并且它可以工作。


0
投票

我可以建议两种选择。

1:您可以保存RDP连接(参见下图),然后从WshShell运行新的.rdp文件。创建.rdp文件后,您必须首次登录,输入凭据,然后选中“记住我的凭据”选项。

Save RDP

2:您可以使用SendKeys方法。这很丑,但有效。缺点是密码留在代码中,所以如果你走这条路线,你可能想要查看加密。您可能还需要调整等待(休眠)以等待弹出窗口出现。

WScript.Sleep 5000 'Sleeps for 5 seconds
SendKeys “{TAB}”, 1 'Focus to the computer name
SendKeys "ServerName", 1
SendKeys "{TAB}", 1 'Focus to the user name
SendKeys "Password", 1
SendKeys "{ENTER}", 1 'Connect
© www.soinside.com 2019 - 2024. All rights reserved.