Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

AutoIt / ɔː t ɪ t / [3] - это бесплатный язык программирования для Microsoft Windows . В своем самом раннем выпуске он был в первую очередь предназначен для создания сценариев автоматизации (иногда называемых макросами ) для программ Microsoft Windows [4], но с тех пор в него были внесены улучшения как в дизайне языка программирования, так и в общей функциональности.

Язык сценариев в AutoIt 1 и 2 был основан на операторах и разработан в первую очередь для имитации взаимодействия с пользователем. Начиная с версии 3, синтаксис AutoIt аналогичен синтаксису семейства языков BASIC . В этой форме AutoIt представляет собой язык программирования общего назначения третьего поколения с классической моделью данных и вариантным типом данных, который может хранить несколько типов данных, включая массивы.

Сценарий автоматизации AutoIt можно преобразовать в сжатый автономный исполняемый файл, который можно запускать на компьютерах, даже если на них не установлен интерпретатор AutoIt. Широкий спектр библиотек функций (известных как UDF или «функции, определяемые пользователем») [5] также включены в стандартную комплектацию или доступны на веб-сайте для добавления специализированных функций. AutoIt также распространяется с IDE на основе бесплатного редактора SciTE . Компилятор и текст справки полностью интегрированы и обеспечивают де-факто стандартную среду для разработчиков, использующих AutoIt.

Особенности [ править ]

Значок формата файла AU3
  • Язык сценариев с BASIC-подобной структурой для Windows
  • Компиляция в отдельные исполняемые файлы
  • Дополнительные библиотеки и модули для конкретных приложений
  • Поддержка TCP и UDP протоколы
  • Поддерживает компонентную объектную модель (COM)
  • Вызов функций в файлах DLL
  • Запускайте консольные приложения и получайте доступ к стандартным потокам
  • Включить файлы данных в скомпилированный файл для извлечения при запуске
  • Создавайте графические пользовательские интерфейсы , включая поля сообщений и ввода
  • Воспроизведение звуков, пауза, возобновление, остановка, поиск, получение текущей позиции звука и длины звука
  • Имитируйте движения мыши
  • Управляйте окнами и процессами
  • Автоматизировать отправку пользовательского ввода и нажатия клавиш в приложения, а также в отдельные элементы управления в приложении
  • Поддержка Unicode с версии 3.2.4.0
  • Поддержка 64-битного кода с версии 3.2.10.0
  • Поддерживает регулярные выражения
  • Совместимость с контролем учетных записей пользователей
  • Объектно-ориентированный дизайн через библиотеку [6]

Использование [ править ]

AutoIt обычно используется для создания служебного программного обеспечения для Microsoft Windows и автоматизации рутинных задач, таких как управление системами, мониторинг, обслуживание или установка программного обеспечения. Он также используется для имитации взаимодействия с пользователем, посредством чего приложение «управляется» (посредством автоматического ввода формы, нажатия клавиш, щелчков мыши и т. Д.) Для выполнения действий с помощью сценария AutoIt.

AutoIt также можно использовать в недорогой автоматизации лабораторий . Приложения включают синхронизацию приборов, мониторинг сигналов тревоги и сбор результатов. Также можно управлять такими устройствами, как фрезерные станки с ЧПУ и 3D-принтеры. [7]

Примеры [ править ]

Привет, мир [ править ]

; Сделайте доступной библиотеку постоянных значений. # включить  < MsgBoxConstants . au3 >; Отображает «Привет, мир!» в почтовом ящике. MsgBox ( $ MB_SYSTEMMODAL ,  «Заголовок» ,  «Привет, мир!» )

Автоматизация калькулятора Windows [ править ]

; Сделайте доступной библиотеку постоянных значений. # включить  < MsgBoxConstants . au3 >; Отображение окна сообщения с таймаутом 6 секунд. MsgBox ( $ MB_OK ,  «Внимание» ,  «Не прикасайтесь к клавиатуре или мыши во время автоматизации.» ,  6 ); Запустите калькулятор Windows. Выполнить ( "calc.exe" ); Подождите, пока калькулятор станет активным с таймаутом 10 секунд. WinWaitActive ( "[КЛАСС: CalcFrame]" ,  "" ,  10 ); Если через 10 секунд калькулятор не появился, выйдите из скрипта. Если  WinExists ( "[CLASS: CalcFrame]" )  =  0  Тогда  Выход; Автоматически введите текущий год в калькулятор. Отправить ( @YEAR ); Давайте немного замедлим сценарий, чтобы увидеть, что происходит. Сон ( 600 ); Автоматически введите «разделить на 4», а затем спите 600 мс. Отправить ( "/ 4" ) в спящий режим ( 600 ); Нажмите клавишу возврата, чтобы отобразить результат, и спите 600 мс. Отправить ( "{ENTER}" ) Спящий режим ( 600 ); Скопируйте результат в буфер обмена с помощью сочетания клавиш Windows Ctrl + C. Отправить ( "^ c" ); Объявите переменную и присвойте ей содержимое буфера обмена. Локальный  $ fResult  =  ClipGet (); Проверьте, содержит ли переменная десятичную точку или нет. Если  StringInStr ( $ fResult ,  "." )  Then  ; Отображение окна сообщения с таймаутом 5 секунд.  MsgBox ( $ MB_OK ,  «Високосный год» ,  @YEAR  &  «не високосный год.» ,  5 ) Иначе  ; Это сообщение отображается, только если текущий год високосный.  MsgBox ( $ MB_OK ,  «Високосный год» ,  @YEAR  &  «високосный год.» ,  5 ) EndIf; Закройте калькулятор Windows - всегда убирайте после этого. WinClose ( "[КЛАСС: CalcFrame]" )

Найти среднее [ править ]

; Найти среднее значение от JohnOne, изменено czardas #include  < MsgBoxConstants . au3 >_Example ()  ; Запустите пример.Func  _Example ()  ; Отобразите поле ввода и попросите пользователя ввести несколько чисел, разделенных запятыми.  Local  $ sInput  =  InputBox ( "Найти среднее" ,  "Введите числа, разделенные запятыми: 1,2,42,100,3" ); Если произошла ошибка, выйдите из скрипта. Если  @error  Тогда  выход ; Заполните массив вводом пользователя.  Локальный  $ aSplit  =  StringSplit ( $ sInput ,  "," ) ; Передайте массив функции _Find_Average (), а затем проверьте наличие ошибок.  Местные  $ fAverage  =  _Find_Average ( $ aSplit )  Если  @error  Тогда  выход ; Отобразите результат в окне сообщения.  MsgBox ( $ MB_OK ,  "Найти среднее" ,  "Результат:"  &  $ fAverage ) EndFunc  ; ==> _ ПримерFunc  _Find_Average ( $ aArray )  ; Если входные данные не правильного типа (массив), вернуть ошибку вместе с деталями.  Если  не  IsArray ( $ aArray )  Тогда  Return  SetError ( 1 ,  0 ,  VarGetType ( $ aArray )) ; Возможны более детальные проверки, но для краткости здесь сделана всего одна. ; Объявите переменную для хранения суммы чисел.  Локальный  $ iArraySum  =  0 ; Прокрутите массив.  Для  $ я  =  1  К  $ aArray [ 0 ]  ; Увеличьте сумму на число в каждом элементе массива.  $ iArraySum  + =  Number ( $ aArray [ $ i ])  Далее ; Возвратите среднее значение, округленное до 2 знаков после запятой.  Возврат  раунда ( $ iArraySum  /  $ aArray [ 0 ],  2 ) EndFunc  ; ==> _ Find_Average

История [ править ]

  • Январь 1999 г. - первая версия AutoIt (1.0)
  • Август 1999 - AutoIt v2 и AutoItX
  • Сентябрь 1999 г. - первая версия AutoIt с компилятором
  • Декабрь 2002 г. - AutoIt v3 (общедоступная бета-версия)
  • Февраль 2004 - AutoIt v3 (стабильный)
  • Сентябрь 2006 г. - запуск Auto3Lib
  • Ноябрь 2007 г. - выпущен AutoIt v3.2.10.0, Auto3Lib включен в AutoIt v3
  • Май 2008 г. - выпущен AutoIt v3.2.12.0, включающий дополнительные функции графического интерфейса.
  • Декабрь 2008 г. - выпущен AutoIt (и AutoItX) v3.3.0.0
  • Декабрь 2009 г. - выпущен AutoIt v3.3.2.0.
  • Январь 2010 г. - выпущен AutoIt v3.3.4.0.
  • Март 2010 г. - выпущен AutoIt v3.3.6.0.
  • Апрель 2010 г. - выпущен AutoIt v3.3.6.1.
  • Декабрь 2011 г. - выпущен AutoIt v3.3.8.0
  • Январь 2012 г. - выпущен AutoIt v3.3.8.1
  • Декабрь 2013 г. - выпущен AutoIt v3.3.10.0
  • Июнь 2014 г. - выпущен AutoIt v3.3.12.0
  • Июль 2015 г. - выпущены AutoIt v3.3.14.0 и v3.3.14.1
  • Сентябрь 2015 г. - выпущен AutoIt v3.3.14.2 [8]
  • Февраль 2018 г. - выпущен AutoIt v3.3.14.3 [9]
  • Март 2018 г. - выпущен AutoIt v3.3.14.5 [10]

Разработчики AutoIt первоначально выпустили исходный код под Стандартной общественной лицензией GNU (GPL) , [11] [12], но эта практика была прекращена, начиная с версии 3.2.0 в августе 2006 года. [ Необходима ссылка ] В соответствии с условиями GPL , часть кода из версии 3.1 использовалась для создания вилки в проекте AutoHotkey [13], где сообщество продолжает разрабатывать и выпускать код под GPL.

См. Также [ править ]

  • AutoHotkey
  • Automator (для Macintosh)
  • Ожидать
  • Keyboard Maestro (для Macintosh)
  • KiXtart
  • iMacros
  • Макро Экспресс
  • thinBasic
  • Winbatch

Ссылки [ править ]

  1. ^ "Загрузки AutoIt" .
  2. ^ "AutoIt v3.3.15.3 Beta" . AutoIt. 2020-05-16 . Проверено 29 мая 2020 .
  3. ^ Ответ Джона (создателя AutoIt) на тему форума, посвященную правильному произношению [ постоянная мертвая ссылка ]
  4. ^ Каплан, Стив (2003). Citrix Metaframe Access Suite для Windows Server 2003 . Нью-Йорк: Макгроу-Хилл. ISBN 0-07-219566-5.
  5. ^ https://www.autoitscript.com/wiki/User_Defined_Functions
  6. ^ AutoitObject. библиотека для использования объектно-ориентированного дизайна в autoit. Архивировано 26 февраля 2010 г. на Wayback Machine.
  7. ^ Carvalho, Матеус C. (март 2016). Практическая автоматизация лабораторий: стало проще с AutoIt . Уайли В. С. 5–7. ISBN 978-3-527-34158-0. Темы, затронутые в этой книге.
  8. ^ "История AutoIt" . www.autoitscript.com . Проверено 19 апреля 2016 .
  9. ^ AutoIt v3.3.14.3 от 2 февраля 2018 г.
  10. ^ AutoIt v3.3.14.5 от 16 марта 2018 г.
  11. ^ «Лицензионные мнения» . AutoIt . 2005-05-02 . Проверено 5 октября 2018 . Лицензия GPL была выбрана, поскольку она общепринята как наиболее ограничивающая.
  12. ^ "Лицензия" . 2014-03-25. Архивировано из оригинала на 2005-01-04 . Проверено 5 октября 2018 . AutoIt - это защищенное авторским правом программное обеспечение, распространяемое на условиях Стандартной общественной лицензии GNU (далее «GPL»).
  13. ^ Крис Маллет (автор AutoHotkey) к сообщению

Внешние ссылки [ править ]

  • Официальный веб-сайт