Урок 3 AutoIt

Спочатку створимо папку, в якій буде перебувати інсталятор WinZip і файл зі сценарієм інсталяції. Скопіюємо в неї дистрибутив WinZip і створимо порожній скрипт під назвоюwinzipinstall.au3.

урок

Перший рядок скрипта простий. Нам потрібно запустити програмуwinzip90.exe, тому напишемо таке:

З'явиться вікно першого діалогу:

урок

Ми, як завжди, повинні дочекатися активності цього вікна, а потім вислати комбінаціюALT-s для того, щоб натиснути кнопкуSetup. Це буде виконано за допомогою наступних рядків:

WinWaitActive("WinZip® 9.0 SR-1 Setup", "&Setup") Send("!s")

З'явиться вікно діалогу для вказівки місця встановлення програми:

WinZip

Знову ми повинні чекати активності цього вікна і після цього натиснути клавішу ENTER для того, щоб погодитися зі стандартним розташуванням файлів програми, що встановлюється. Це виконується за допомогою наступних рядків сценарію:

WinWaitActive("WinZip Setup", "ввімкнути folder") Send("")

Після цього з'явиться вікно із зазначенням опцій WinZip:

WinWaitActive

Зауважимо, що це вікно має такий самий заголовок, як і попереднє -WinZip Setup. Насправді всі вікна діалогів установки мають один і той самий заголовок! Для того, щоб відрізняти ці вікна один від одного потрібно використовувати додаткові відомості - текст, який представлений у цьому вікні. Спробуйте натиснути зображення кожного вікна і знайти найбільш унікальний фрагмент тексту, що характеризує це вікно. В даному випадку підходить текстWinZip features include. Знову після того, як вікно виявляється активним, нам потрібно буде натиснутиALT-n :

WinWaitActive("WinZip Setup", "WinZipfeatures include") Send("!n")

З'явиться вікно з текстом ліцензії:

урок

Знову чекаємо активності вікна та натискаємоALT-y для згоди з умовами ліцензії:

WinWaitActive("License Agreement") Send("!y")

Установка продовжується в тій же манері протягом кількох вікон. Зображення вікон відображаються нижче разом із відповідними рядками сценарію для їхнього проходу.

autoit

WinWaitActive("WinZip Setup", "Quick Start Guide")

autoit

WinWaitActive("WinZip Setup", "switch between the two interfaces") Send("!c")

WinZip

WinWaitActive("WinZip Setup", "&Express setup (recommended)") Send("!e")

autoit

WinWaitActive("WinZip Setup", "WinZip потрібний для поєднання його з вашими архівами")

WinWaitActive

Це вікно є завершальним діалогом установки. Зауважимо, що кнопкаFinish НЕ МАЄ підкреслених літер. Однак, вона є стандартною кнопкою, тому нам досить просто натиснути клавішу ENTER. Якщо б це було не так, то завжди можна за допомогою натискання клавіші TAB вибрати потрібну кнопку і набору представлених або використовувати, і це НАЙБІЛЬШЕ, функцію ControlClick.

WinWaitActive("WinZip Setup", "Якщо ви налаштовуєте цю версію перевірки") Send("")

Відразу після встановлення WinZip буде автоматично запущено:

autoit

Ми просто чекатимемо на появу основного вікна програми WinZip, після чого закриємо його за допомогою функції WinClose.

WinWaitActive("WinZip (Evaluation Version)") WinClose("WinZip (Evaluation Version)")

От і все! Запустіть скриптwinzipinstaller.au3 і погляньте як буде встановлений WinZip за пару секунд! Ви зможете використовувати описану на цьому уроці техніку для автоматизаціїустановки більшості програм.

Як вправу читачеві пропонується спробувати переписати текст сценарію таким чином, щоб натискання на кнопки виконувались не за допомогою функції Send, яка надсилає натискання клавіатури тільки в активне вікно, а із застосуванням функції ControlClick, яка дозволяє виконати те саме, але надійніше. Для того, щоб це виконати, прочитайте опис функції Controls.

Надіслати повідомлення про помилку Якщо знайшли помилку в тексті, виділіть її мишою і натисніть сполучення клавіш Ctrl+ENTER, вкажіть правильний текст без помилки.