Что нового

Распознание активного окна

aventru

Новичок
Сообщения
1
Репутация
0
Возникают ситуации при которых уже было установлено ПО, но его нужно переустановить и выходят не те окна которые мы ждем... Необходимо чтоб при выходе окна программа могла распознать окно (WinGetTitle("[active]")) и выбрать необходимые действия.
Я только недавно стал изучать autoit и есть проблемы в написании синтаксиса... поэтому прошу помощи =)

Код:
#RequireAdmin
Run("cadesplugin.exe")
$title = WinGetTitle("[active]")
WinWaitActive('КриптоПро ЭЦП Browser plug-in')
Send('{ENTER}')
$title = WinGetTitle("[active]")
WinWaitActive('$title')
If $title = ("Обновление") Then
   Send('{ENTER}')
   WinWaitActive('КриптоПро ЭЦП Browser plug-in')
   Send('{ENTER}')
.....
 

InnI

AutoIT Гуру
Сообщения
4,912
Репутация
1,429
aventru [?]
выходят не те окна которые мы ждем
А вы ждите те окна, которые нужны. Чтобы понять - установка или обновление - вы должны заранее знать, чем окна отличаются и ждать любое из них. Когда дождались - выполняйте соответствующие действия. Например
Код:
$TitleInstall = "Установка"
$TitleUpdate = "Обновление"

Run("program.exe")

Do
  Sleep(100)
Until WinExists($TitleInstall) Or WinExists($TitleUpdate)

If WinExists($TitleInstall) Then
  ; установка
  WinWaitActive($TitleInstall)
Else
  ; обновление
  WinWaitActive($TitleUpdate)
EndIf
 
Верх