[英]How to specify address for Remote Desktop Connection using VBScript?
我想使用VBScript將地址注入“遠程桌面連接”提示符。 我被特別告知我必須使用Windows Automation API來做到這一點,但在閱讀文檔之后,我沒有找到任何可以用於VBScript的東西。 我該怎么辦?
PS:正如Helen和此主題所指出的,目前不支持VBScript訪問UI Automation API。
您實際上並不需要GUI自動化。 要指定要連接的計算機,只需使用/v
命令行參數啟動mstsc
,例如:
CreateObject("WScript.Shell").Run "mstsc /v:computername"
或者,如果您有一個包含計算機名稱和連接設置的.rdp文件 ,則可以使用mstsc
啟動此文件:
CreateObject("WScript.Shell").Run "mstsc E:\ComputerName.rdp"
如果需要,您可以動態生成.rdp文件,如下所示:
Dim oFSO, oShell, strFileName, strComputerName
strComputerName = "computername"
strFileName = "E:\ComputerName.rdp"
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oStream = oFSO.CreateTextFile(strFileName, True)
oStream.WriteLine "full address:s:" + strComputerName
' TODO: Write other settings
oStream.Close
Set oShell = CreateObject("WScript.Shell")
oShell.Run "mstsc """ + strFileName + """"
回復評論:
但是我想要實現的不是RDP的任務,而是實際的注入本身(這可以推廣到不同應用的不同窗口)。
Windows Script Host提供了用於GUI自動化的AppActivate
和SendKeys
方法,但它們並非萬無一失。
我建議使用GUI自動化工具,例如AutoIt (免費)。 在AutoIt腳本中,您可以使用ControlSetText
函數更改輸入字段中的文本,例如:
Run("notepad.exe")
WinWait("[CLASS:Notepad]")
ControlSetText("[CLASS:Notepad]", "", "Edit1", "Hello, world!")
您還可以使用AutoIt的AU3Recorder 記錄用戶操作,這樣您就不必手動編寫腳本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.