找回密码
 加入
搜索
查看: 3444|回复: 4

[AU3基础] [已解决]IF...Then后面执行多条语句问题

[复制链接]
发表于 2010-5-14 19:38:47 | 显示全部楼层 |阅读模式
本帖最后由 waxy 于 2010-5-15 11:10 编辑

各位,请教想在IF...Then后面执行多条语句的问题,先看看下面的代码吧.
........
Func main()
    If  Not WinActive ("ECI") Then MsgBox(16, "警告...", "EIC被意外的退出,10秒钟后系统重启后将继续!!",10) ;想在这个地方直接执行重启----Shutdown(10)
    Shutdown(10)       
Sleep(2000)
If $time <= 0 Then ProcessClose("ECI")
$PID = ProcessExists("ECI")
If $PID Then ProcessClose($PID)
Shutdown(5)
EndFunc   ;==>main
想让脚本 If  Not WinActive ("EIC") 显示提示后,直接重启,如果把Shutdown(10)放在下行,又有一个问题,当If $time <= 0 then exitloop后脚本也会先
执行重启"Shutdown(10)"而不先结束ECI的进程,再关机.不知道有没有办法IF...Then后面执行多条语句,麻烦有时间帮看看,先谢了.

评分

参与人数 1金钱 +10 收起 理由
afan + 10 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

发表于 2010-5-14 20:50:03 | 显示全部楼层
$time 在哪定义的
If $time <= 0 then exitloop 在哪
If $time <= 0 Then ProcessClose("ECI") 这里能终止ECI吗? 为什么下面也是终止ECI的代码? 那还要If干嘛?
完全不懂你的目的哦
发表于 2010-5-14 21:29:22 | 显示全部楼层
这样?
    If  Not WinActive ("ECI") Then
    MsgBox(16, "警告...", "EIC被意外的退出,10秒钟后系统重启后将继续!!",10)
    Shutdown(10) 
    EndIf
 楼主| 发表于 2010-5-15 11:07:20 | 显示全部楼层
本帖最后由 waxy 于 2010-5-15 11:22 编辑

回复 2# afan
先谢谢afan!不好意思,是我没讲清楚,还是我上次问你那个ECI系统的问题.想做成让脚本自动运行ECI 10小时(用倒计时的方式If $time <= 0 Then ProcessClose("ECI") ),
如果没问题就关机.但在这10小时中可能出些一些意外导致ECI终止(通过If  Not WinActive ("ECI") 来判断),如果意外终止的就自动重启再次运行ECI直到没问题止.
脚本的前面还有两个循环语句,用于判断If $time <= 0 Then exitloop/If  Not WinActive ("ECI") the exitloop;      Func main()再次判断两个循环语句结束后执行的
其它动作.问题已经解决了,其实只要在If  Not WinActive ("ECI") Then后面加个endif结束IF即可.298311657 兄弟说的是对的.谢谢!
 楼主| 发表于 2010-5-15 11:07:54 | 显示全部楼层
这样?
298311657 发表于 2010-5-14 21:29

谢谢你,问题解决了.
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-18 19:14 , Processed in 0.076893 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表