35598253 发表于 2010-12-14 12:08:14

【已解决】关于软件自动安装,加IF判断窗口后不执行下一操作的问题!

本帖最后由 35598253 于 2010-12-15 12:48 编辑

WinWaitActive($bt, $txt1)
ControlClick($bt, $txt1, "Button2")
WinWaitActive($bt, $txt2)
ControlClick($bt, $txt2, "Button2")
WinWaitActive($bt, $txt3)
ControlClick($bt, $txt3, "Button2")
WinWaitActive($bt, $txt4)
ControlClick($bt, $txt4, "Button2")
if WinWaitActive($bt, $txt5)Then
ControlClick($bt, $txt5, "Button2")
endif
WinWaitActive($bt, $txt6)
ControlClick($bt, $txt6, "Button5")
ControlClick($bt, $txt6, "Button6")
ControlClick($bt, $txt6, "Button2")
加上红色的判断句后后面的语句就不执行了~~
求高手解答~~

lxz 发表于 2010-12-14 12:44:55

是什么的软件自动安装?

dhwc 发表于 2010-12-14 12:45:02

跟我刚提的那个nod32安装脚本遇到的问题一样,你可以看下作为借鉴

Dive 发表于 2010-12-14 13:44:39

可能由于AU3运行过快
在判断语句那时进行了次窗口检查而没检查到窗口
参考Adlib 函数
帮助文档里有

35598253 发表于 2010-12-14 14:03:55

回复 4# Dive


    也有这种可能,但是如果加个注册表判断的话,就能执行,所以我感觉可能是由于语句WinWaitActive的原因~我再试试吧~

menfan1 发表于 2010-12-14 14:12:02

加上ELSE。。。如何如何才行吧

35598253 发表于 2010-12-14 15:07:19

回复 6# menfan1


   不用吧,直接判断就应该可以了~~~

都市浪子666 发表于 2010-12-14 19:28:04

楼主的问题跟这个是一样的吧
http://www.autoitx.com/thread-20379-1-1.html

yhxhappy 发表于 2010-12-14 20:32:41

改成下面的试试,其实ControlClick命令不需要窗口属于激活状态也能发送事件,所以只要判断窗口存在就行了

if WinWait($bt, $txt5, 5)Then       ;等待窗口5秒钟,如果5秒钟内窗口出现则执行以下语句,否则跳过
ControlClick($bt, $txt5, "Button2")
endif

35598253 发表于 2010-12-15 10:53:39

试试都市浪子的方法~一会上来反馈~~~~

35598253 发表于 2010-12-15 12:47:35

都市浪子的方法试验成功~谢谢都市浪子~~~~
页: [1]
查看完整版本: 【已解决】关于软件自动安装,加IF判断窗口后不执行下一操作的问题!