我正在运行一个“autoit3.chm”文件。当它运行时,我想发送一个向下键箭头,但它不起作用:
$file = FileGetShortName("C:\Users\PHSD100-SIC\Desktop\AutoIt3.chm")
Run(@ComSpec & " /c start " & $file)
WinWaitActive("AutoIT Help")
Send("{DOWN}")
我正在运行一个“autoit3.chm”文件。当它运行时,我想发送一个向下键箭头,但它不起作用:
$file = FileGetShortName("C:\Users\PHSD100-SIC\Desktop\AutoIt3.chm")
Run(@ComSpec & " /c start " & $file)
WinWaitActive("AutoIT Help")
Send("{DOWN}")
好吧,您只是在等待错误的窗口标题...尝试WinWaitActive("AutoIt Help")
它会起作用...您的“ T ”必须是“ t ”...
要找到它,您只需要检查脚本输出并打开 CHM 文件后,您会看到脚本仍在运行。但是您会期望它执行Send(...)
然后终止。因此,您的脚本必须仍在等待预期的窗口出现。这将导致您仔细检查窗口标题,可能您会直接使用AutoIt Window Info Tool复制窗口标题,这表明您的错误。纠正它。中提琴,开心点=)
此外:您不需要先运行命令提示符,您可以ShellExecute($file)
直接调用。
如果您使用AutoIt Window Info工具,它可以帮助解决这些问题,并且使用ConsoleWrite(...)
s 进行调试也是一个好习惯。
例如,一个简单的将和以前一样。但是,您可能应该使用超时或变量,并将返回用于成功/失败。
WinWaitActive("Window")
ConsoleWrite("Success")
Send("{DOWN}")
ConsoleWrite("Success")
使用以下语法向下键输入
Send("{DOWN 2}")
和向上键输入类似
Send("{UP 2}")