我正在尝试用 VBScript 为 SecureCRT 编写一个脚本,该脚本发送击键来自动执行一些重复性较高的任务。通常,我所要做的就是按几个键,但我正在尝试让脚本为我按下它们。
问题是,无论我使用 crt.Sleep 设置屏幕等待多长时间,它似乎只是等待,然后以光速按下所有按键。
本质上,我的代码如下所示:
crt.Screen.SendKeys "{TAB}"
crt.Sleep 10
crt.Screen.SendKeys "{TAB}"
crt.Sleep 10
crt.Screen.SendKeys "f"
crt.Sleep 10
crt.Screen.SendKeys "p"
crt.Sleep 10
crt.Screen.SendKeys "p"
crt.Sleep 10
crt.Screen.SendKeys "r"
crt.Sleep 10
crt.Screen.SendKeys "{F10}"
crt.Sleep 10
crt.Screen.SendKeys "{ENTER}"
crt.Sleep 250
crt.Screen.SendKeys "v"
crt.Sleep 10
crt.Screen.SendKeys "{F10}"
crt.Sleep 10
crt.Screen.SendKeys "{ENTER}"
crt.Sleep 250
(我知道这很恶心——我最初编写了一个函数来消除所有重复,但我失去了一些进度)
我经常使用以下函数来添加暂停时间。我不确定“crt.Sleep 10”是如何工作的,但这可能对你更有效。
Function Pause(PauseTime)
Dim Start = Timer
Do While Timer < Start + PauseTime
'Pause
Loop
End Function
我能够运行这个,crt.Sleep“以毫秒为单位的值”
例如:
crt.Sleep 5000
等待 5 秒,这对我有用。