AutoIt:发送(“{DOWN}”)不起作用

时间:2013-06-13 03:55:55

标签: autoit

我正在运行“autoit3.chm”文件。当它运行时,我想发送一个向下键箭头,但它不起作用:

$file = FileGetShortName("C:\Users\PHSD100-SIC\Desktop\AutoIt3.chm")
Run(@ComSpec & " /c start " & $file)
WinWaitActive("AutoIT Help")
Send("{DOWN}")

3 个答案:

答案 0 :(得分:5)

嗯,你只是在等待错误的窗口标题...尝试WinWaitActive("AutoIt Help")它会起作用......你的“ T ”必须是“ t ” ...
要找到它,您只需要检查脚本输出,并在打开CHM文件后,您将看到您的脚本仍在运行。但是你会期望它执行Send(...)然后终止。因此,您的脚本仍必须等待出现预期的窗口。这将导致您仔细检查您的窗口标题,可能您将使用 AutoIt窗口信息工具直接复制窗口标题,这显示您的错误。纠正它。中提琴,快乐=)

此外:您不需要先运行命令提示符,而是可以直接调用ShellExecute($file)

答案 1 :(得分:1)

如果您使用 AutoIt窗口信息工具,它可以解决这些问题,使用ConsoleWrite(...)进行调试也是一种很好的做法。

例如,一个简单的就像以前一样。但是,您应该使用超时或变量,并使用return返回成功/失败。

WinWaitActive("Window")
ConsoleWrite("Success")
Send("{DOWN}")
ConsoleWrite("Success")

答案 2 :(得分:-1)

使用以下语法向下键输入

Send("{DOWN 2}") 

和类似的向上键输入

Send("{UP 2}")