我有啓動Telnet會話,並執行與使用vbs腳本幾個命令的批處理文件:Windows批處理文件不能持續工作
start telnet.exe another.hostname
timeout /t 1 /nobreak > NUL
cscript c:\scripts\sendtelnet.vbs 1
我的vbs腳本是這樣的:
WScript.sleep 1000
arg = Wscript.Arguments.Item(0)
WScript.sleep 1000
cmd = "RUN CMD D "&arg&"{ENTER}"
WScript.sleep 1000
set OBJECT=WScript.CreateObject("WScript.Shell")
WScript.sleep 6000
OBJECT.SendKeys "administrator{ENTER}"
WScript.sleep 200
OBJECT.SendKeys "mypass{ENTER}"
WScript.sleep 200
OBJECT.SendKeys cmd
WScript.sleep 5000
OBJECT.SendKeys "QUIT{ENTER}"
WScript.sleep 500
OBJECT.SendKeys "{ENTER}"
WScript.sleep 100
OBJECT.SendKeys " "
我可以運行這個測試大約10次,但它只能在大約8次中運行10次。我目睹了測試失敗,會發生什麼事是telnet窗口打開,但它掛在「用戶名」提示符上,最終Telnet會話超時,窗口不會關閉。
爲什麼這隻有時纔有效?我是否需要增加睡眠時間?我試圖睡6000毫秒,而且它似乎已經足夠長了。我一直在嘗試很多東西,但我一直在這個部分卡住,我願意在這一點上嘗試任何事情,請有任何建議嗎?
你失去了重點? '成功= OBJECT.AppActivate(「telnet窗口的標題在這裏」)'發送密鑰之前 – 2013-04-23 15:44:21
這是一個非常好的建議,亞歷克斯,我會試試這個。 – 2013-04-23 16:23:45