AutoIt

Материал из Seo Wiki - Поисковая Оптимизация и Программирование

Перейти к: навигация, поиск
<tr><th style="padding:3px">Тип исполнения:</th><td class="" style="padding:3px">

интерпретируемый </td></tr><tr><th style="padding:3px">Автор(ы):</th><td class="" style="padding:3px"> Джонатан Беннет и AutoIt Team </td></tr><tr><th style="padding:3px">Последняя версия:</th><td class="" style="padding:3px"> 3.3.2.0 (18 декабря, 2009) </td></tr><tr><th style="padding:3px">Тестовая версия:</th><td class="" style="padding:3px"> 3.3.3.1 (4 января, 2010) </td></tr> </table>

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":

MsgBox(0, "Пример", "Hello World!")


GUI программа, этот же пример C:\Program Files\AutoIt3\Examples\GUI\SampleControls.au3:

#include <GuiConstantsEx.au3>
#include <AVIConstants.au3>
#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

См. также

Ссылки

AutoIt
Файл:AutoitLogo4.gif </span>
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

Источник — «http://www.sbup.com/wiki/AutoIt»
Личные инструменты

Served in 0.563 secs.