AutoIt: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Нет описания правки
Перевод и дополнение по материалам официального сайта
Метка: добавление ссылки
Строка 12: Строка 12:


С выходом AutoIt 3 синтаксис языка был реструктурирован и приблизился к семейству [[BASIC]]. Скрипт может быть скомпилирован в независимый от установленного в системе [[интерпретатор]]а исполняемый файл.
С выходом AutoIt 3 синтаксис языка был реструктурирован и приблизился к семейству [[BASIC]]. Скрипт может быть скомпилирован в независимый от установленного в системе [[интерпретатор]]а исполняемый файл.

AutoIt использует симуляцию нажатия клавиш, движений мыши и манипуляции с окнами, элементами управления. Это позволяет автоматизировать задачи пользователя Windows таким образом, какой невозможен или затруднён в других языках программирования. Кроме того, этот язык компактен, самодостаточен и работает на всех версиях Windows «прямо из коробки», без внешних .dll-библиотек и записей в реестре, что позволяет безопасно использовать его на серверах.


Возможности языка включают:
Возможности языка включают:
* Совместимость с Windows 2000 / XP / 2003 / Vista / 2008 / Windows 7 / 2008 R2
* Компиляция скрипта в [[EXE]] файл.
* Версия для 64-битных систем.
* Поддержка User Account Control (UAC) в Windows Vista.
* Поддержка юникода, начиная с версии 3.2.4.0.
* Запуск консольных приложений и доступ к стандартным потокам ввода/вывода.
* Запуск программ от имени другого пользователя (функции RunAs).
* Компиляция скрипта в [[EXE]] файл с помощью Aut2Exe.
* Включение файлов в скомпилированный файл, которые можно извлекать при запуске.
* Включение файлов в скомпилированный файл, которые можно извлекать при запуске.
* Сжатие и защита исполняемого файла от декомпиляции с помощью упаковщика [[UPX]]
* Создание графических интерфейсов [[GUI]], информационных сообщений, форм ввода информации.
* Создание графических интерфейсов [[GUI]], информационных сообщений, форм ввода информации.
* Вызов функций из 32-битных динамических библиотек и функций Windows API.
* Работа с реестром Windows, буфером обмена, файлами (чтение, изменение, копирование, удаление).
* Работа с объектами [[Component Object Model|COM]] (component object modelling).
* Перехват и эмуляция клавиатурных нажатий и кликов мышки.
* Перехват и эмуляция клавиатурных нажатий и кликов мышки.
* Интернет: чтение HTML кода страниц и скачивание файлов, работа с [[FTP]], отправка E-mail сообщений, работа с базами данных [[MySQL]] и [[SQLite]].
* Запуск консольных приложений и доступ к стандартным потокам ввода/вывода.
* Работа с реестром Windows, буфером обмена, файлами (чтение, изменение, копирование, удаление).
* Работа с протоколами [[TCP]] и [[UDP]].
* Работа с протоколами [[TCP]] и [[UDP]].
* Автоматизация работы в браузерах: [[Internet Explorer]], [[Opera]], [[FireFox]].
* Автоматизация работы в браузерах: [[Internet Explorer]], [[Opera]], [[FireFox]].
* Обычные элементы высокоуровневого языка, такие как работа с циклами.
* Интернет: чтение HTML кода страниц и скачивание файлов, работа с [[FTP]], отправка E-mail сообщений, работа с базами данных [[MySQL]] и [[SQLite]].
* Огромное количество функций для работы с текстом (строками), в т.ч. с [[регулярные выражения|регулярными выражениями]] в стиле [[Perl]] (используется библиотека [[PCRE]]).
* Работа с объектами [[Component Object Model|COM]] (component object modelling).
* Вызов функций из 32-битных динамических библиотек.
* Работа со звуком.
* Работа со звуком.
* Выполнение сложных математических расчётов.
* Выполнение сложных математических расчётов.
* Простой синтаксис, похожий на [[BASIC]].
* Поддержка юникода, начиная с версии 3.2.4.0.
* AutoItX — объединённая версия в виде [[Component Object Model|COM]] и [[Динамически подключаемая библиотека|DLL]], позволяющая использовать возможности AutoIt в программах, написанных на других языках.
* Версия для 64-битных систем.
* Поддержка User Account Control (UAC) в Windows Vista.


AutoIt распространяется с [[Интегрированная среда разработки|IDE]], основанном на бесплатном редакторе [[SciTE]]. Компилятор, вспомогательные утилиты и справочные материалы полностью интегрированы, что делает редактор стандартным окружением для разработчиков, использующих AutoIt. Компилятор AutoIt и среда разработки SciTE легко устанавливаются, дополнительных настроек не требуется. Есть полная документация по языку AutoIt на русском языке<ref>[http://www.autoitscript.com/site/autoit/documentation-localization/ AutoIt Documentation Localization] {{ref-en}}</ref>.
AutoIt распространяется с [[Интегрированная среда разработки|IDE]], основанном на бесплатном редакторе [[SciTE]]. Компилятор, вспомогательные утилиты и справочные материалы полностью интегрированы, что делает редактор стандартным окружением для разработчиков, использующих AutoIt. Компилятор AutoIt и среда разработки SciTE легко устанавливаются, дополнительных настроек не требуется. Есть полная документация по языку AutoIt на русском языке<ref>[http://www.autoitscript.com/site/autoit/documentation-localization/ AutoIt Documentation Localization] {{ref-en}}</ref>.
Строка 41: Строка 50:
Для упрощения разработки графических интерфейсов существует визуальный редактор форм Koda FormDesigner, имеющий интерфейс аналогичный [[Delphi (среда разработки)|Delphi IDE]]. Поддерживается визуальное создание и изменение всех доступных в AutoIt диалоговых элементов (кнопок, полей ввода, меню и т. д.)
Для упрощения разработки графических интерфейсов существует визуальный редактор форм Koda FormDesigner, имеющий интерфейс аналогичный [[Delphi (среда разработки)|Delphi IDE]]. Поддерживается визуальное создание и изменение всех доступных в AutoIt диалоговых элементов (кнопок, полей ввода, меню и т. д.)


Исходный код AutoIt 3.1.0 доступен для загрузки в [http://www.autoitscript.com/autoit3/files/archive/autoit/ архиве AutoIt],но код дальнейших версий закрыт. Код был разработан небольшой командой, но с активной поддержкой пользователей со всего мира. Сторонняя поддержка включает, в частности, файлы справки, примеры программ, форумы техподдержки, список рассылки, утилиты.
<!--
In its earliest release, the software was primarily intended to create automation scripts (sometimes called [[macro]]s) for Microsoft Windows programs. Such scripts proved useful for "hands-free" completion of highly repetitive tasks, such as rolling out a large number of PCs with identical installation instructions.

With later releases, Autoit evolved to include enhancements in both programming language design and overall functionality. This expanded the uses for Autoit, thus justifying comparison with other more established «general purpose» programming languages and scripting tools.

There are a few omissions in the Autoit programming language that some may find limiting. Autoit lacks (or has only limited support for) such features as: [[Namespace (computer science)|Namespaces]]; [[object-oriented programming]]; [[abstract data type]]s; [[reference (computer science)|reference types]]; [[class (computer science)|classes]]; and advanced graphics functions.

AutoIt’s version 3.1.0 source code is available for download from the [http://www.autoitscript.com/autoit3/files/archive/autoit/ AutoIt archive], but source code for later version will not be released. The code was developed by a small team with the help of worldwide contributors. AutoIt has extensive third-party support, including help files, examples, support forums, mailing list, editor files, and third-party utilities.

With the release of AutoIt version 3, the syntax of the programming language was restructured to be more like the [[BASIC]] family of languages. A script can be compiled into a compressed, stand-alone executable which can then be run on computers that do not have the AutoIt interpreter installed.

Moreover, new features include the ability to:
* Communicate via the [[Transmission Control Protocol|TCP]] and [[User Datagram Protocol|UDP]] protocols.
* Use COM ([[component object model]]ling) objects.
* Call functions in [[Microsoft Dynamic Link Library|Win32 DLLs]].
* Run console applications and access the [[standard streams]].

* Include files in the compiled file to be extracted when run
* Make [[Graphical User Interface|GUI]] interfaces, create message and input boxes.
* Play sounds, pause, resume, stop, seek, get the current position of the sound and get the length of the sound
* Perform complicated mathematical calculations
* Automate sending user input and keystrokes to applications, as well as individual controls within an application.
* Unicode support starting in version 3.2.4.0

It is available for [http://www.autoitscript.com/autoit3/downloads.php download] along with other beta releases.

== Example ==

'''Hello World:''' (semicolon used for [[Comparison_of_programming_languages_%28syntax%29#Comments|inline comments]])
<source lang="autoit">
; display a message dialog
MsgBox(0,"Example","Hello World!")
</source>


Текущая версия языка доступна для [http://www.autoitscript.com/autoit3/downloads.php скачивания] на официальном сайте проекта, также как и предыдущие релизы.
== AutoIt community ==


== Пример ==
The forums can be found at [http://www.autoitscript.com/forum/ http://www.autoitscript.com/forum/]
'''Программа «Привет, мир»:'''
There are many sub-forums where AutoIt users can submit finished scripts or User Defined Functions, ask for support, report bugs, submit ideas and also talk with Developers.
;Выводит стандартное окно с названием «Пример», надписью «Привет, мир!» и кнопкой «ОК».
MsgBox(0,"Пример","Привет, мир!")


'''Создание диалогового окна:'''
== Other uses ==
;Выводит диалоговое окно с кнопками «ОК» и «Отмена». В случае нажатия «ОК» — выход из программы.
;Табуляция в примере — для удобства чтения.
$WantExit=MsgBox(1,"Вопрос","Хотите выйти из программы?")
If $WantExit == 1 Then
Exit
EndIf


== Сообщество AutoIt ==
Although AutoIt is intended as a general purpose scripting and automation language its users always find new ways to make use of it. One of the most popular and unexpected uses of AutoIt is for «botting» in online games. Botting allows the user to run a script which automates some repetitive action in the game — usually so the script user can advance in the game more quickly. Use of AutoIt in this way is frowned upon by the AutoIt community as it can generate bad publicity.
Официальный англоязычный форум находится по адресу [http://www.autoitscript.com/forum/ http://www.autoitscript.com/forum/]. Там пользователи могут делиться своими скриптами и функциями, получать техподдержку, сообщать о багах, вносить идеи и предложения, общаться с разработчиками.
-->
Также есть [http://autoit-script.ru сайт русскоязычного сообщества]


== См. также ==
== См. также ==

Версия от 19:00, 10 ноября 2012

AutoIt
Файл:AutoitLogo4.gif
Класс языка программное обеспечение и сценарный язык
Тип исполнения интерпретируемый, компилируемый
Появился в январь 1999
Автор Джонатан Беннет и AutoIt Team
Расширение файлов .au3 или .a3x
Выпуск 3.3.8.1 (29 января, 2012)
Лицензия бесплатное программное обеспечение[1]
Сайт www.autoitscript.com/site/
Платформа Windows
ОС Windows
Логотип Викисклада Медиафайлы на Викискладе

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

С выходом AutoIt 3 синтаксис языка был реструктурирован и приблизился к семейству BASIC. Скрипт может быть скомпилирован в независимый от установленного в системе интерпретатора исполняемый файл.

AutoIt использует симуляцию нажатия клавиш, движений мыши и манипуляции с окнами, элементами управления. Это позволяет автоматизировать задачи пользователя Windows таким образом, какой невозможен или затруднён в других языках программирования. Кроме того, этот язык компактен, самодостаточен и работает на всех версиях Windows «прямо из коробки», без внешних .dll-библиотек и записей в реестре, что позволяет безопасно использовать его на серверах.

Возможности языка включают:

  • Совместимость с Windows 2000 / XP / 2003 / Vista / 2008 / Windows 7 / 2008 R2
  • Версия для 64-битных систем.
  • Поддержка User Account Control (UAC) в Windows Vista.
  • Поддержка юникода, начиная с версии 3.2.4.0.
  • Запуск консольных приложений и доступ к стандартным потокам ввода/вывода.
  • Запуск программ от имени другого пользователя (функции RunAs).
  • Компиляция скрипта в EXE файл с помощью Aut2Exe.
  • Включение файлов в скомпилированный файл, которые можно извлекать при запуске.
  • Сжатие и защита исполняемого файла от декомпиляции с помощью упаковщика UPX
  • Создание графических интерфейсов GUI, информационных сообщений, форм ввода информации.
  • Вызов функций из 32-битных динамических библиотек и функций Windows API.
  • Работа с реестром Windows, буфером обмена, файлами (чтение, изменение, копирование, удаление).
  • Работа с объектами COM (component object modelling).
  • Перехват и эмуляция клавиатурных нажатий и кликов мышки.
  • Интернет: чтение HTML кода страниц и скачивание файлов, работа с FTP, отправка E-mail сообщений, работа с базами данных MySQL и SQLite.
  • Работа с протоколами TCP и UDP.
  • Автоматизация работы в браузерах: Internet Explorer, Opera, FireFox.
  • Обычные элементы высокоуровневого языка, такие как работа с циклами.
  • Огромное количество функций для работы с текстом (строками), в т.ч. с регулярными выражениями в стиле Perl (используется библиотека PCRE).
  • Работа со звуком.
  • Выполнение сложных математических расчётов.
  • Простой синтаксис, похожий на BASIC.
  • AutoItX — объединённая версия в виде COM и DLL, позволяющая использовать возможности AutoIt в программах, написанных на других языках.

AutoIt распространяется с IDE, основанном на бесплатном редакторе SciTE. Компилятор, вспомогательные утилиты и справочные материалы полностью интегрированы, что делает редактор стандартным окружением для разработчиков, использующих AutoIt. Компилятор AutoIt и среда разработки SciTE легко устанавливаются, дополнительных настроек не требуется. Есть полная документация по языку AutoIt на русском языке[2].

Подобно другим скриптовым языкам, AutoIt — язык третьего поколения, использующий классическую модель и переменные вариантного типа, позволяющие хранить различные типы данных, включая массивы. В AutoIt отсутствуют (или имеют ограниченную поддержку) пространства имён, объектно-ориентированное программирование, абстрактные типы данных, классы, расширенные графические функции. Однако, помимо возможностей, встроенных в ядро AutoIt, можно воспользоваться большой библиотекой готовых функций.

Популярное использование AutoIt — разработка утилит для Microsoft Windows. Такие распространённые задачи, как мониторинг веб-сайтов, мониторинг сетей, дефрагментация дисков и резервное копирование могут быть автоматизированы и скомбинированы в виде настроенной под пользователя утилиты.

Нередко AutoIt используется для создания ботов к онлайн-играм. Боты позволяют автоматизировать некоторые действия в играх, в результате пользователь может быстрее добиться нужного результата. Такое использование Autoit не одобряется сообществом, поскольку создаёт плохую репутацию программе, однако несколько подобных скриптов могут быть найдены на официальном форуме. Использование ботов рассматривается большинством пользователей AutoIt как нечестная игра, и вам не следует ожидать значительной помощи от сообщества в их создании. Многие члены сообщества вообще не рассматривают такие запросы.

Для упрощения разработки графических интерфейсов существует визуальный редактор форм Koda FormDesigner, имеющий интерфейс аналогичный Delphi IDE. Поддерживается визуальное создание и изменение всех доступных в AutoIt диалоговых элементов (кнопок, полей ввода, меню и т. д.)

Исходный код AutoIt 3.1.0 доступен для загрузки в архиве AutoIt,но код дальнейших версий закрыт. Код был разработан небольшой командой, но с активной поддержкой пользователей со всего мира. Сторонняя поддержка включает, в частности, файлы справки, примеры программ, форумы техподдержки, список рассылки, утилиты.

Текущая версия языка доступна для скачивания на официальном сайте проекта, также как и предыдущие релизы.

Пример

Программа «Привет, мир»:

Выводит стандартное окно с названием «Пример», надписью «Привет, мир!» и кнопкой «ОК».

MsgBox(0,"Пример","Привет, мир!")

Создание диалогового окна:

Выводит диалоговое окно с кнопками «ОК» и «Отмена». В случае нажатия «ОК» — выход из программы.
Табуляция в примере — для удобства чтения.

$WantExit=MsgBox(1,"Вопрос","Хотите выйти из программы?")

 If $WantExit == 1 Then
    Exit
 EndIf

Сообщество AutoIt

Официальный англоязычный форум находится по адресу http://www.autoitscript.com/forum/. Там пользователи могут делиться своими скриптами и функциями, получать техподдержку, сообщать о багах, вносить идеи и предложения, общаться с разработчиками. Также есть сайт русскоязычного сообщества

См. также

Примечания

Ссылки