Използвам 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
the class is changed
това, което всъщност имате предвид е, че бутонът е скрит и следващият бутон е показан, не мисля, че класът ще се промени (въпреки че можете да потвърдите това, като проверите дали манипулаторът се променя). Моля, можете ли да форматирате кода си и също така да добавите малко повече информация, като например какво е[ID:17696]
и за какво се отнася текстът&Next >
(в момента го използвате като текст на прозореца, което не мисля, че е това, което възнамерявате). Друга информация, която би била полезна, е какво е състоянието наButton1
преди да стане видимо. - person Matt   schedule 23.08.2013