AutoIt

Материал из Seo Wiki - Поисковая Оптимизация и Программирование
Перейти к навигацииПерейти к поиску
AutoIt
Файл:AutoitLogo4.gif
Тип исполнения:

интерпретируемый

Автор(ы):

Джонатан Беннет и AutoIt Team

Последняя версия:

3.3.2.0 (18 декабря, 2009)

Тестовая версия:

3.3.3.1 (4 января, 2010)

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

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

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

  • Компиляция скрипта в EXE файл.
  • Включение файлов в скомпилированный файл, которые можно извлекать при запуске.
  • Создание графических интерфейсов GUI, информационных сообщений, форм ввода информации.
  • Перехват и эмуляция клавиатурных нажатий и кликов мышки.
  • Запуск консольных приложений и доступ к стандартным потокам ввода/вывода.
  • Работа с реестром Windows, буфером обмена, файлами (чтение, изменение, копирование, удаление).
  • Работа с протоколами TCP и UDP.
  • Автоматизация работы в браузерах: Internet Explorer, Opera, FireFox.
  • Интернет: чтение HTML кода страниц и скачивание файлов, работа с FTP, отправка E-mail сообщений, работа с базами данных MySQL и SQLite.
  • Работа с объектами COM (component object modelling).
  • Вызов функций из 32-битных динамических библиотек.
  • Работа со звуком.
  • Выполнение сложных математических расчётов.
  • Поддержка юникода, начиная с версии 3.2.4.0.
  • Версия для 64-битных систем.


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

→ Компилятор AutoIt и среда разработки SciTE очень легко устанавливаются, дополнительных настроек не требуется.

→ Есть полная документация по языку AutoIt на русском языке.

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

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

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


Примеры

Сообщение "Hello World": <source lang="autoit"> MsgBox(0, "Пример", "Hello World!") </source>


GUI программа, этот же пример C:\Program Files\AutoIt3\Examples\GUI\SampleControls.au3: <source lang="autoit">

  1. include <GuiConstantsEx.au3>
  2. include <AVIConstants.au3>
  3. include <TreeViewConstants.au3>
GUI

GuiCreate("Sample GUI", 400, 400) GuiSetIcon(@SystemDir & "\mspaint.exe", 0)

MENU

GuiCtrlCreateMenu("Menu&One") GuiCtrlCreateMenu("Menu&Two") GuiCtrlCreateMenu("MenuTh&ree") GuiCtrlCreateMenu("Menu&Four")

CONTEXT MENU

$contextMenu = GuiCtrlCreateContextMenu() GuiCtrlCreateMenuItem("Context Menu", $contextMenu) GuiCtrlCreateMenuItem("", $contextMenu) ;separator GuiCtrlCreateMenuItem("&Properties", $contextMenu)

PIC

GuiCtrlCreatePic("logo4.gif",0,0, 169,68) GuiCtrlCreateLabel("Sample pic", 75, 1, 53, 15) GuiCtrlSetColor(-1,0xffffff)

AVI

GuiCtrlCreateAvi("sampleAVI.avi",0, 180, 10, 32, 32, $ACS_AUTOPLAY) GuiCtrlCreateLabel("Sample avi", 170, 50)

TAB

GuiCtrlCreateTab(240, 0, 150, 70) GuiCtrlCreateTabItem("One") GuiCtrlCreateLabel("Sample Tab with tabItems", 250, 40) GuiCtrlCreateTabItem("Two") GuiCtrlCreateTabItem("Three") GuiCtrlCreateTabItem("")

COMBO

GuiCtrlCreatecombo("Sample Combo", 250, 80, 120, 100)

PROGRESS

GuiCtrlCreateProgress(60, 80, 150, 20) GuiCtrlSetData(-1, 60) GuiCtrlCreateLabel("Progress:", 5, 82)

EDIT

GuiCtrlCreateEdit(@CRLF & " Sample Edit Control", 10, 110, 150, 70)

LIST

GuiCtrlCreateList("", 5, 190, 100, 90) GuiCtrlSetData(-1, "a.Sample|b.List|c.Control|d.Here", "b.List")

ICON

GuiCtrlCreateIcon("shell32.dll", 1, 175, 120) GuiCtrlCreateLabel("Icon", 180, 160, 50, 20)

LIST VIEW

$listView = GuiCtrlCreateListView("Sample|ListView|", 110, 190, 110, 80) GuiCtrlCreateListViewItem("A|One", $listView) GuiCtrlCreateListViewItem("B|Two", $listView) GuiCtrlCreateListViewItem("C|Three", $listView)

GROUP WITH RADIO BUTTONS

GuiCtrlCreateGroup("Sample Group", 230, 120) GuiCtrlCreateRadio("Radio One", 250, 140, 80) GuiCtrlSetState(-1, $GUI_CHECKED) GuiCtrlCreateRadio("Radio Two", 250, 165, 80) GUICtrlCreateGroup ("",-99,-99,1,1) ;close group

UPDOWN

GuiCtrlCreateLabel("UpDown", 350, 115) GuiCtrlCreateInput("42", 350, 130, 40, 20) GuiCtrlCreateUpDown(-1)

LABEL

GuiCtrlCreateLabel("Green" & @CRLF & "Label", 350, 165, 40, 40) GuiCtrlSetBkColor(-1, 0x00FF00)

SLIDER

GuiCtrlCreateLabel("Slider:", 235, 215) GuiCtrlCreateSlider(270, 210, 120, 30) GuiCtrlSetData(-1, 30)

INPUT

GuiCtrlCreateInput("Sample Input Box", 235, 255, 130, 20)

DATE

GuiCtrlCreateDate("", 5, 280, 200, 20) GuiCtrlCreateLabel("(Date control expands into a calendar)", 10, 305, 200, 20)

BUTTON

GuiCtrlCreateButton("Sample Button", 10, 330, 100, 30)

CHECKBOX

GuiCtrlCreateCheckbox("Checkbox", 130, 335, 80, 20) GuiCtrlSetState(-1, $GUI_CHECKED)

TREEVIEW ONE

$treeOne = GuiCtrlCreateTreeView(210, 290, 80, 80) $treeItem = GuiCtrlCreateTreeViewItem("TreeView", $treeOne) GuiCtrlCreateTreeViewItem("Item1", $treeItem) GuiCtrlCreateTreeViewItem("Item2", $treeItem) GuiCtrlCreateTreeViewItem("Foo", -1) GuiCtrlSetState($treeItem, $GUI_EXPAND)

TREEVIEW TWO

$treeTwo = GuiCtrlCreateTreeView(295, 290, 103, 80, $TVS_CHECKBOXES) GuiCtrlCreateTreeViewItem("TreeView", $treeTwo) GuiCtrlCreateTreeViewItem("With", $treeTwo) GuiCtrlCreateTreeViewItem("tvs_checkboxes", $treeTwo) GuiCtrlSetState(-1, $GUI_CHECKED) GuiCtrlCreateTreeViewItem("Style", $treeTwo)

GUI MESSAGE LOOP

GuiSetState() While GuiGetMsg() <> $GUI_EVENT_CLOSE WEnd </source>

См. также

Ссылки

cs:AutoIt3 da:Autoit de:AutoIt en:AutoIt es:AutoIt fr:AutoIt it:AutoIt ja:AutoIt ko:오토잇 nl:AutoIt oc:AutoIt pl:AutoIt sk:AutoIt sv:AutoIt tr:AutoIt vi:AutoIt

Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....