大家好我正在使用AutoIt运行脚本来插入要使用webdriver上传的文件路径。
但是发送命令是如此不可靠,它是50/50它会弄乱角色,脚本就会停止。
有没有办法让它可靠地输入数据?或者,我怎样才能确认输入是否正确,重新发送,然后发送?
这就是我对代码所拥有的。它将输入发送到firefox上传窗口。
WinWaitActive("File Upload")
Send("C:\Users\elsid\Desktop\Eclipse\Workspace\NG - Mentored\Autoit\Test.png")
Send("{ENTER}")
由于
答案 0 :(得分:1)
在我看来,脚本停止了,因为它等待窗口聚焦。为了不弄乱字符,请在Send()中使用函数标志1。 试试这个:
While WinWait("File Upload","",1) = 0
Sleep(500)
WEnd
WinActivate("File Upload")
Send("C:\Users\elsid\Desktop\Eclipse\Workspace\NG - Mentored\Autoit\Test.png", 1) ;-- flag 1 = keys are sent raw.
Send("{ENTER}")
祝你好运;)
答案 1 :(得分:1)
最可靠的方法是使用ControlSetText。
使用AutoitWindowInfo工具进行游戏,并根据需要调整下面的脚本。
#RequireAdmin ;Will give your script a permission elevation (sometimes its needed)
Opt("WinTitleMatchMode", 1) ;1=start, 2=subStr, 3=exact, 4=advanced, -1 to -4=Nocase
Opt("WinSearchChildren", 1) ;0=no, 1=search children also
WinActivate("File Upload")
WinWaitActive("File Upload","",10)
ControlFocus("File Upload","","Edit1")
Sleep(2000)
ControlSetText("File Upload","","Edit1","dropdowns.jpg")