afan
发表于 2015-12-19 11:08:55
回复 15# xing999999
如果是这样,你至少可以这样测试:看看句柄变化了几次,如果是三次就三次后关闭,不会想办法吗?
xing999999
发表于 2015-12-19 11:19:11
回复 16# afan
还可以确定句柄变化了几次?语句是什么?我看后面那些参数没有几次的确认啊
afan
发表于 2015-12-19 11:22:40
回复afan
还可以确定句柄变化了几次?语句是什么?我看后面那些参数没有几次的确认啊
xing999999 发表于 2015-12-19 11:19 http://www.autoitx.com/images/common/back.gif
无语了。。。你以为有万能函数? 自己写
xing999999
发表于 2015-12-19 11:27:05
回复 18# afan
老师,这太强人所难了,我真写不出。完全没概念,你能否随便拿个其他的例子发来,我研究下?
afan
发表于 2015-12-19 11:35:16
本帖最后由 afan 于 2015-12-19 11:36 编辑
回复 19# xing999999
还是从有控件的操作学起吧,你这样空降下来,选个“相对的难题”啃,又不肯自己研究,太累!不是指你,是我! 你没发现几乎没人回复你这类贴吗? 太基础Local $srf = "2345王牌输入法v3.5安装"
Run("2345pinyin.exe")
Local $hWnd0 = WinWait($srf)
WinActivate($srf)
Send("{ENTER}")
Local $hBak = $hWnd0, $iC = 0, $iDone = 3
Do
Sleep(50)
$hWnd0 = WinGetHandle($srf)
If $hWnd0 <> $hBak Then
$iC += 1
Tooltip($iC) ;提醒变化的次数。到最后的窗口出现,即为总变化次数,记住这个值,写在上面的 $iDone = 后面
EndIf
Until $iC = $iDone
Msgbox(0, '', '已出现安装完成窗口?')
WinActivate($srf)
Send("{ENTER}")
xing999999
发表于 2015-12-19 11:36:09
回复 20# afan
半路出来的,野路子没办法。。还好有您{:face (356):}
afan
发表于 2015-12-19 11:40:24
回复afan
半路出来的,野路子没办法。。还好有您
xing999999 发表于 2015-12-19 11:36 http://www.autoitx.com/images/common/back.gif
有个P,你不私信骚扰我我都不会回了,太累
xing999999
发表于 2015-12-19 11:43:59
调试成功。。$iDone要大于50才成功。。。虽然上面是有变化的次数,但是到了最后结束窗口出来后,变化的次数依然在不停的增加。。也就是我设置为$iDone=1000也等于是在倒数时间一样,倒数1000,然后就发送回车结束。。
xing999999
发表于 2015-12-19 11:46:48
回复 20# afan
而且我设置为$iDone = 40的时候,有时候成功,有时候失败。。像是sleep的感觉。。
afan
发表于 2015-12-19 11:49:40
调试成功。。$iDone要大于50才成功。。。虽然上面是有变化的次数,但是到了最后结束窗口出来后,变化的次数 ...
xing999999 发表于 2015-12-19 11:43 http://www.autoitx.com/images/common/back.gif
那肯定是重复句柄,你需要继续改进
ila
发表于 2015-12-19 11:50:32
这个公司对静默安装运用的出神入化,我怀疑这安装包也可以用静默安装。
用“程序静默参数扫描工具”扫扫
xing999999
发表于 2015-12-19 11:51:19
回复 25# afan
老师你声明了$hBak,但是这个变量为什么没赋值呢
xing999999
发表于 2015-12-19 11:52:05
回复 26# ila
我只是拿来学习,因为发现他们的安装工具全部都是控件不可获取的- -。。。
afan
发表于 2015-12-19 11:54:19
Local $srf = "2345王牌输入法v3.5安装"
Run("2345pinyin.exe")
Local $hWnd0 = WinWait($srf)
WinActivate($srf)
Send("{ENTER}")
Local $iC = 0, $iDone = 3
Assign($hWnd0, 0)
Do
Sleep(50)
$hWnd0 = WinGetHandle($srf)
If Not IsDeclared($hWnd0) Then
Assign($hWnd0, 0)
$iC += 1
Tooltip($iC) ;提醒变化的次数。到最后的窗口出现,即为总变化次数,记住这个值,写在上面的 $iDone = 后面
EndIf
Until $iC = $iDone
Msgbox(0, '', '已出现安装完成窗口?')
WinActivate($srf)
Send("{ENTER}")
ila
发表于 2015-12-19 11:55:20
回复ila
我只是拿来学习,因为发现他们的安装工具全部都是控件不可获取的- -。。。
xing999999 发表于 2015-12-19 11:52 http://www.autoitx.com/images/common/back.gif
果然有,静默参数是 /s