我正在使用AutoIt自动化安装程序,我开始使用Run()
。
最初,安装程序的Next
按钮被禁用(此时此类的类别为Button3
)。启用Next
按钮后,其类将更改为Button1
。我不确定如何定位此按钮:
WinWait("AirWatch - Installation Wizard", "")
If Not WinActive("AirWatch - Installation Wizard", "") Then WinActivate("AirWatch - Installation Wizard", "")
WinWaitActive("AirWatch - Installation Wizard", "")
While Not ControlCommand('AirWatch - Installation Wizard', '', 'Button3', 'IsEnabled', '')
Sleep(500)
WEnd
ControlClick('AirWatch - Installation Wizard', '&Next >', '[ID:17696]')
;Note: Text: &Next >
If Not ControlCommand('AirWatch - Installation Wizard', '', 'Button1', 'IsEnabled', '') Then
Do
Sleep(10)
Until ControlCommand('AirWatch - Installation Wizard', '', 'Button1', 'IsEnabled', '')
EndIf
答案 0 :(得分:0)
模拟Windows开始栏上的点击。这应该刷新窗口,然后它应该有按钮的原始ControlID
。这看起来很糟糕。
代码:
WinActivate($WinName, "")
WinWaitActive($WinName, "")
$winPos = WinGetPos($WinName, "")
; $winPos-Array contains x/y-coords. The click will be at the mainbar for most windows
; and will be instant (invoked by the last parameter being 0)
MouseClick("primary", $winPos[0] + 150, $winPos[1] + 10, 1, 0)
; ....
; ... Do your stuff