找回密码
 加入
搜索
查看: 2689|回复: 5

[效率算法] 代码跳转问题 请指点下[已解决]

[复制链接]
发表于 2013-1-16 13:20:22 | 显示全部楼层 |阅读模式
本帖最后由 heroxianf 于 2016-3-9 14:04 编辑

下面是基本思路

run('office.exe')

---------
自动安装部分
---------

whiel 1
每隔一秒检测office.exe进程是否存在,如果存在代码继续自动安装,不存在跳出循环继续安装winrar.exe
wend

run('winrar.exe')
自动安装代码
 楼主| 发表于 2013-1-16 13:22:51 | 显示全部楼层
Local $pid = Run('notepad.exe')
AdlibRegister('auto',1000)
Sleep(2000)
Sleep(3000)
ProcessClose($pid)
Sleep(2000)
Sleep(3000)

WinWait('无标题 - 记事本','')
Send("测试")




Func auto()
        While 1
                
        If Not ProcessExists($pid) Then        ExitLoop


WEnd
EndFunc



MsgBox(0,'test','运行第3程序!')

MsgBox(0,'test','末端')
这是我做的测试 反正不成功。
发表于 2013-1-16 21:30:39 | 显示全部楼层
思路可以,可代码中怎么多了AdlibRegister(),还把While循环放在其中,不行。不要用AdlibRegister(),直接While循环进行检测。还有,notepad.exe如要本程序来终止 ,那还要检测来干嘛呢?
 楼主| 发表于 2013-1-18 02:55:49 | 显示全部楼层
测试就是试每个命令的作用!所以什么都有!我现在想到的就是在每获取窗口之前判断一次进程是否存在!存在获取窗口执行安装,不存在就下一步!因为我真的想不到判断后又继续回去安装的法子了。
发表于 2013-1-18 05:32:40 | 显示全部楼层
自动安装几乎用不到adlib和while
发表于 2013-1-18 08:37:38 | 显示全部楼层
不如这样吧(假设 程序名和进程名相同~):
Run("xxx.exe")
Do
        Sleep(100)
Until Not ProcessExists("xxx.exe")
Run("yyy.exe")
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-13 23:58 , Processed in 0.083218 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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