找回密码
 加入
搜索
查看: 3122|回复: 9

[AU3基础] [已解决]这段代码为什么只执行了一次调用的函数?

  [复制链接]
发表于 2010-12-19 07:05:38 | 显示全部楼层 |阅读模式
本帖最后由 happytc 于 2010-12-19 19:54 编辑

下面的代码为什么不向记事本里发送无数“OK”?我的目的就是先启动一个程序,然后不停地调用执行一个函数,并检测这个程序进程,若不在了,就退出脚本
If Not WinExists("[CLASS:Notepad]") Then RunWait("notepad")
While 1
        If Not ProcessExists("notepad.exe") Then Exit
        notepad()
        Sleep(250)
WEnd

Func notepad()
        WinActivate("[CLASS:Notepad]")
        Send("0k")
EndFunc
发表于 2010-12-19 07:19:04 | 显示全部楼层
因为你退出了循环啊
 楼主| 发表于 2010-12-19 07:22:05 | 显示全部楼层
前面可能说得不清楚,我重新改了下说法
发表于 2010-12-19 08:44:25 | 显示全部楼层
很高升的码子
发表于 2010-12-19 10:17:25 | 显示全部楼层
把Runwait改成Run,把Sleep语句放在notepad语句前面。
发表于 2010-12-19 10:26:28 | 显示全部楼层
楼主的头像很个性。。
发表于 2010-12-19 19:26:23 | 显示全部楼层
楼主的头像很个性。。
蜘蛛抱蛋 发表于 2010-12-19 10:26


我都没有注意到,经你这一说,我觉得你的头像也非常那个神马.......
发表于 2010-12-19 19:51:55 | 显示全部楼层
记事本没退出
一次都调用不了(还没进入循环哦~~)
;RunWait("notepad") ;运行并等候返回
If Not WinExists("[CLASS:Notepad]") Then Run("notepad") ;只运行!该句执行完毕,脚本会继续下一指令
 楼主| 发表于 2010-12-19 19:55:38 | 显示全部楼层
谢谢楼上各位,我没有理解Runwait函数的用法,还以为是“一直等到程序运行起来呢”,原来是:运行一个外部程序并暂停脚本的执行直至该程序执行完毕.
发表于 2010-12-19 21:24:02 | 显示全部楼层
回复 7# ahphsautoit

呵呵,这个不是画的,是五水硫酸铜拼的
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-22 05:47 , Processed in 0.079818 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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