# AutoIt

AutoIt (pronúncia: aw-toe-it) é uma linguagem de automação (scripting) grátis para sistema Windows. Que facilitam o gerenciamento do sistema, fazer manutenção, instalação de softwares, etc. Ele também é usado para simular interações do usuário, onde a aplicação é "conduzida" para fazer as tarefas por meio de um script de forma mais rápida do que o usuário.
Na primeira versão, a principal função da ferramenta era criar scripts de automação (macros) para programas do Windows mas tem crescido com inclusão de melhorias, tanto na concepção da linguagem de programação quanto na interação com o sistema operacional.
A partir da versão 3 em diante, a sintaxe AutoIt ficou semelhante à família de linguagens do tipo BASIC. Nesta forma, o AutoIt é de uso geral, Linguagem de programação de terceira geração com um modelo de dados clássicos e um tipo de dados variante que pode armazenar vários tipos de dados, incluindo arrays. Enquanto a versão 1 e 2 são compatíveis com as seguintes versões do Windows: NT4, XP, 2003, Vista e Windows 7). Suporte para sistemas anterior ao Windows 2000 foi descontinuado com o lançamento da versão v3.3.0, em Dezembro de 2008).

## Características Gerais

Um script do AutoIt pode ser convertido / compilado em um executável standalone, para ser rodado em outros computadores que não tem o AutoIt instalado (não depende de RunTimes).
Possui Uma grande quantidade de bibliotecas de funções (chamadas UDF - "User Defined Functions" ou "Funções Definidas pelo Usuário") estão incluídas por padrão e também no site estão disponíveis outras para adicionar funcionalidades especializadas no AutoIt.
Também possui uma IDE, baseada no editor SciTE, com ajuda e compilador integrados.
Onde esta presente a única desvantagem da versãoatual, não tem GUI WYSIWYG – ‘What You See Is What You Get’, ou seja, tudo tem que ser feito no plano cartesiano.

## Funções Específicas

* Linguagem de script com estrutura semelhante ao BASIC para o ambiente Windows.
* Bibliotecas e módulos extras para aplicações especificas;
* Fórum de suporte para desenvolvedores e usuário do AutoIt;
* Extenso e detalhado arquivo de ajuda;
* Suporte a protocolo TCP e UDP;
* Suporta COM;
* Compilar o código em executáveis "standalone";
* Chama funções de Win32 DLLs;
* Roda aplicações de console e acessa Entrada/saída do mesmo;
* Inclui diversos arquivos no compilado para serem extraidos quando executado;
* Cria interfaces GUI, com vários recursos;
* Inicia sons, pausa, busca, e obtem a posição atual do som entre outros;
* Interação com o sistema, simula movimentos do mouse e digitação do teclado;
* Manipula janelas e processos;
* Manipula o registro do windows
* Automatiza o envio de entrada do usuário e teclas de atalho para aplicativos e controles individuais;
* Scripts podem ser compilados em um executável unico;
* Suporte a Unicode a partir da versão 3.2.4.0;
* Códigos 64-bit a partir da versão 3.2.10.0;
* Suporta expressões regulares (Regex), e;
* Funciona com o User Account Control do Windows Vista.

## Referência de Linguagem

E como toda linguagem, o AutoIt possui uma bem completa: Variáveis; Macros; Operadores; Condicionais; Repetição; Objetos; Funções de Usuário; Comentários.

## Riscos

Como o AutoIt é uma ferramenta de automação, ele pode ser mal usado, assim como qualquer linguagem de programação, para criar Bots para fazer tarefas ou até jogar pelo jogador, a equipe AutoIt não proverá suporte para esta automação. Da mesma forma, AutoIt, no passado, foi utilizado para criar malwares - Como o cavalo de Tróia AutoIt.D , mas não apresentaram todas as ideias de 2006. As aplicações AutoIt ocasionalmente recebem um relatório de falso-positivo, pois as aplicações são executáveis comprimidos, e não necessariamente porque eles carregam malwares.

## Histórico

* Dezembro 1998 - Ideia de um programa em C que enviaria comandos de teclas.
* Janeiro 1999 - Primeira versão do AutoIt (1.0)
* Agosto 1999 - AutoIt v2 e AutoItX
* Setembro 1999 - Primeira versão do AutoIt com compilador.
* Dezembro 2002 - AutoIt v3 (Beta aberto)
* Fevereiro 2004 - AutoIt v3 (Estável)
* Setembro 2006 - Auto3Lib iniciada
* Novembro 2007 - AutoIt v3.2.10.0 liberado, Auto3Lib incorporado no AutoIt v3
* Maio 2008 - AutoIt v3.2.12.0 liberado, adicionado a funcionalidade GUI.
* Dezembro 2008 - AutoIt e AutoItX v3.3.0.0 liberados
* Dezembro 2009 - AutoIt v3.3.2.0 liberado
* Janeiro 2010 - AutoIt v3.3.4.0 liberado
* Março 2010 - AutoIt v3.3.6.0 liberado
* Abril 2010 - AutoIt v3.3.6.1 liberado
* Dezembro 2011 - AutoIt v3.3.8.0 liberado
* Janeiro 2012 - AutoIt v3.3.8.1 liberado
* Dezembro 2013 - AutoIt v3.3.10.0 liberado
* Junho 2014 - AutoIt v3.3.12.0 liberado
Os desenvolvedores do AutoIt originalmente lançaram o código-fonte sob a GNU General Public License (GPL), mas a prática foi interrompida a partir da versão 3.2.0, em agosto de 2006. Após os termos da GPL, alguns dos código da versão 3.1 foi usada para criar o Auto Hot Key, a comunidade continua desenvolvendo e liberando versões sob GPL.