AutoIt3 - Как перейти, если окно всплывает? - PullRequest
0 голосов
/ 08 октября 2009

Я пытаюсь написать скрипт AutoIt3, чтобы пройти через мастер для настройки программы. В какой-то момент, в зависимости от того, что уже установлено на машине, может появиться или не появиться другое диалоговое окно, говорящее что-то вроде: «Это уже существует ... что бы вы хотели сделать?». Затем я заставлю скрипт обработать это диалоговое окно и затем продолжу.

Проблема в том, что я не могу понять, как заставить его что-то ветвиться на , если оно всплывает без двух запущенных скриптов AutoIt: один для основной настройки мастера, а другой для просмотра для возможного всплывающего окна.

Есть предложения?

Ответы [ 2 ]

2 голосов
/ 08 октября 2009

Если вы не знаете, когда это произойдет (что может появиться в любой момент), вы можете попробовать это:

AdlibEnable("myadlib")

Func myadlib()
    If WinActive("Error") Then
        ;...
    EndIf
EndFunc

Из файла справки:

AdlibEnable


Включает функциональность Adlib.

AdlibEnable ( "function" [, time] )

Параметры

  • function Имя вызываемой функции adlib.

  • time [необязательно] как часто в миллисекундах вызывать функцию. По умолчанию 250 мс.

2 голосов
/ 08 октября 2009

Если вы знаете, где в настройке появляется диалоговое окно, вы можете попробовать это: после того, как вы пройдете через мастера к этому моменту, WinWait для диалога. Если WinWait вернется безуспешно, возможно, диалоговое окно не появилось.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...