AutoIt(オートイット)は、主にMicrosoft Windowsオペレーティングシステム上での自動化タスクのために設計された、フリーでオープンソース(現在はソース非公開)の
プログラミング言語です。特に、Windowsアプリケーションのグラフィカルユーザーインターフェイス(GUI)操作の自動化に強みを持っています。キーボード入力やマウス操作のシミュレーション、ウィンドウやプロセス、コントロールの操作などを容易に行うことができます。
この言語の大きな特徴の一つは、作成したスクリプトを単独で実行可能なWindowsの実行ファイル(.exe形式)にコンパイルできる点です。これにより、AutoItインタープリタがインストールされていない環境でも、作成した自動化プログラムを配布・実行することが可能になります。また、フリーウェアとして提供されており、世界中のユーザーによって開発された多数のライブラリや便利な開発ツールが存在します。
AutoItは、Windows環境に特化しているため、以下のような幅広い機能を標準でサポートしています。
Windows GUIの操作: ウィンドウの移動、サイズ変更、非表示化、アクティブ化など、様々な操作を実行できます。また、アプリケーション内のボタン、テキストボックス、リストビューなどのコントロールを識別し、操作することが可能です。
入力とキー操作: キーボードからの入力や、特定のキーシーケンス(ショートカットキーなど)の送信をシミュレートできます。これにより、アプリケーションへのデータ入力や操作を自動化できます。
マウス操作: マウスポインターの移動、クリック、ドラッグアンドドロップといった操作をプログラムから制御できます。
プロセスとコンソール: 外部プログラムの実行や、実行中のプロセス情報の取得、終了などが行えます。また、コンソールアプリケーションの標準入出力ストリームへのアクセスも可能です。
ネットワーク機能: TCPおよびUDPプロトコルを使用したネットワーク通信をサポートしています。
システム機能: レジストリ操作、ファイル操作、サービス操作など、Windowsシステムの様々な側面を制御できます。
GUIの作成: 簡易的ながら、独自のGUIを持つプログラムを作成することも可能です。メッセージボックスや入力ボックスの表示も容易に行えます。
その他の機能: COMオブジェクトやDLLのサポート、
正規表現の利用、音声ファイルの制御なども可能です。バージョンアップにより、
Unicodeサポート(v3.2.4.0以降)や
64ビットコード対応(v3.2.10.0以降)も実現されています。
AutoItの歴史は1998年末に、
C言語でキーストローク送信のアイデアが提案されたことから始まります。翌1999年1月には最初のバージョンであるAutoIt v1.0がリリースされ、その後v2やAutoItX、専用コンパイラなどが登場しました。特に大きな節目となったのは、2002年12月にベータ版が登場し、2004年2月に安定版がリリースされたAutoIt v3です。このバージョン以降、GUI関数が追加されるなど、機能が大幅に強化されました。2007年11月にはAuto3LibがAutoIt v3に統合され、2008年5月にはGUI関連機能がさらに充実し、同年末にはv3.3.0.0がリリースされています。
当初、AutoItはGPL
ライセンスの下でソースコードが公開されていましたが、現在はソースコードの公開は中止されています。これは、別のプロジェクトがAutoItのソースコードを繰り返し取り込み、さらにAutoItに対して敵対的な行動をとったため、と開発者側は説明しています。
AutoItの機能は、提供されているDLL形式のファイルであるAutoItXを介して、他の
プログラミング言語からも利用することが可能です。AutoItXを使用することで、Perl、Ruby、Pythonなど、COMインターフェイスやDLLをサポートする様々な言語から、AutoItの組み込み関数の一部を呼び出して自動化タスクを実行できます。これにより、既存のアプリケーションやスクリプトに容易に自動化機能を組み込むことができます。
AutoItは、システム管理タスクの自動化、
ソフトウェアのデプロイメント、テスト自動化、反復作業の効率化など、多岐にわたる用途で活用されています。シンプルながら強力な機能を備えており、Windows環境での自動化ニーズに応える強力なツールとして広く認識されています。