AutoIt
AutoIt 3.3.14.5 LATEST
Windows XP / Vista / Windows 7 / Windows 8 / Windows 10
AutoIt 2021 full offline installer setup for PC 32bit/64bit
AutoIt is a freeware BASIC-like scripting language designed for automating the Windows GUI and general scripting. It uses a combination of simulated keystrokes, mouse movement, and window/control manipulation in order to automate tasks in a way not possible or reliable with other languages (e.g. VBScript and SendKeys). AutoIt is also very small, self-contained, and will run on all versions of Windows out-of-the-box with no annoying “runtimes” required!
It was initially designed for PC “roll out” situations to reliably automate and configure thousands of PCs. Over time it has become a powerful language that supports complex expressions, user functions, loops, and everything else that veteran scripters would expect.
It has been designed to be as small as possible and stand-alone with no external .dll files or registry entries required making it safe to use on Servers. Scripts can be compiled into stand-alone executables with Aut2Exe.
Also supplied are a combined COM and DLL version of the app called AutoItX that allows you to add the unique features of AutoIt to your own favorite scripting or programming languages! It has a BASIC-like syntax which means that most people who have ever written a script or used a high-level language should be able to pick it up easily.
AutoIt is a very small and standalone application with no reliance on massive runtimes like .NET or VB. All you need to run AutoIt scripts are the main the app executable (AutoIt3.exe) and the script. Scripts can also be encoded into standalone executables with the built-in script compiler Aut2Exe.
Much time has been spent optimizing the keystroke and mouse simulation functions to be as accurate as possible on all versions of Windows. All the mouse and keyboard routines are highly configurable both in terms of simulation “speed” and functionality.
Features and Highlights
- Easy to learn BASIC-like syntax
- Simulate keystrokes and mouse movements
- Manipulate windows and processes
- Interact with all standard windows controls
- Scripts can be compiled into standalone executables
- Create Graphical User Interfaces (GUIs)
- COM support
- Regular expressions
- Directly call external DLL and Windows API functions
- Scriptable RunAs functions
- Detailed helpfile and large community-based support forums
- Compatible with Windows XP / 2003 / Vista / 2008 / Windows 7 / 2008 R2 / Windows 8 / 2012 R2 / Windows 10
- Unicode and x64 support
- Digitally signed for peace of mind
- Works with Windows Vista’s User Account Control (UAC)
If you are looking for AutoIt alternatives, we recommend you to download TinyTask or AutoHotkey.
AutoIt Downloads
Overview
You can download the main AutoIt package and other related scripting tools from this page. The current version of AutoIt has works on the following operating systems:
- Windows XP and Windows Server 2003
- Windows Vista and Windows Server 2008/2008 R2
- Windows 7
- Windows 8 (desktop mode)
- Windows 10 (desktop mode)
Current Versions
Here you can download AutoIt and related files.
The AutoIt installer and executables have been digitally signed by AutoIt Consulting Ltd. If you get a Microsoft SmartScreen warning after downloading the installer please see the SmartScreen and AutoIt page for more details.
Version | Date last updated | Notes | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
v3.3.14.5 | 16 March, 2018 | Release Notes
Script EditorsProgramming and writing scripts in Notepad can be a pain. The AutoIt team has created a custom version of SciTe that has the following features and tools included:
The homepage for the AutoIt version of SciTe can be found here. Other Text EditorsIf you don’t want to use SciTe or have your own favorite text editor then AutoIt comes with syntax files for the following editors “out of the box”: The syntax files for these are stored in the Extras \ Editors directory of the AutoIt installation. Check Windows version using foldersRecommended PostsCreate an account or sign in to commentYou need to be a member in order to leave a comment Create an accountSign up for a new account in our community. It’s easy! Sign inAlready have an account? Sign in here. Recently Browsing 0 membersNo registered users viewing this page. Similar ContentWhat i’m trying to achieve is to bundle a few folders within the executable script and from what I’ve read it can be done with: EDIT: question about _WinAPI_CreateWindowEx ; Small AutoIt Application that uses Windows API ; Written by Yuraj #NoTrayIcon #include #include #include #include #include #include AutoItSetOption(«MustDeclareVars», 1) ; Window definitions Const $WinWidth = 370 Const $WinHeight = 350 Const $WinXPos = (@DesktopWidth / 2) — ($WinWidth / 2) Const $WinYPos = (@DesktopHeight / 2) — ($WinHeight / 2) Const $WinTitle = «Win32 Application — Text reader» Const $WinClass = «mainapp» Const $WinIcon = _WinAPI_LoadIcon(_WinAPI_GetModuleHandle(«shell32.dll»), 13) ; Windows handles Global $hwnd, $edit1, $btn1, $btn2 ; Fonts Global $fnt1 ; Register class, Create the window Local $retVal = __WinAPI_RegisterClassEx($WinClass, «WindowCallback», $WinIcon, 0, _WinAPI_GetSysColor($COLOR_BTNFACE), BitOR($CS_DEFAULTSTYLE, $CS_DROPSHADOW)) ; If $retVal == 0 Then ; If registerclass fails MsgBox(16, «Error», «Error while registering window class!») Exit EndIf ; Create windows/controls $hwnd = _WinAPI_CreateWindowEx($WS_EX_STATICEDGE, $WinClass, $WinTitle, BitOR($WS_OVERLAPPED,$WS_SYSMENU, $WS_MINIMIZEBOX, $WS_GROUP, $WS_DLGFRAME), $WinXPos, $WinYPos, $WinWidth, $WinHeight, 0) $btn1 = _WinAPI_CreateWindowEx(0, «button», «Open file . «, BitOR($WS_VISIBLE, $WS_CHILD, $WS_TABSTOP, $WS_CLIPCHILDREN), 25, 270, 100, 30,$hwnd) $btn2 = _WinAPI_CreateWindowEx(0, «Button», «Exit», BitOR($WS_VISIBLE, $WS_CHILD, $WS_TABSTOP, $WS_CLIPCHILDREN), 235, 270, 100, 30, $hwnd) $edit1 = _WinAPI_CreateWindowEx(0, «edit», «text», BitOR($WS_VISIBLE, $WS_CHILD, $WS_VSCROLL, $ES_AUTOVSCROLL, $es_readOnly, $WS_TABSTOP), 5, 5, $WinWidth — 15, $WinHeight — 100, $hwnd) ; Set controls identifiers _WinAPI_SetWindowLong($btn1,$GWL_ID,150) _WinAPI_SetWindowLong($btn2,$GWL_ID,160) ; Set (controls) fonts $fnt1 = _CreateFont(«MS Sans Serif», 15) _WinAPI_SetFont($btn1, $fnt1) _WinAPI_SetFont($btn2, $fnt1) _WinAPI_SetFont($edit1, $fnt1) ; Set focus to edit _WinAPI_SetFocus($edit1) ; Show window _WinAPI_ShowWindow($hwnd) _WinAPI_UpdateWindow($hwnd) ; Main loop that keep application opened While 1 Sleep(100) WEnd ;=================================================================; ; WINDOW CALLBACK . ;=================================================================; Func WindowCallback($_hwnd, $iMsg, $wParam, $lParam) Local $iNC, $iID Switch $iMsg ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Case $WM_CLOSE ; Show message on closing If MsgBox(48 + 4, $WinTitle, «Do you want really exit?», 0, $hwnd) <> 6 Then Return 0 ; Call destructor and then exit main thread FinalizeApp() Exit ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Case $WM_COMMAND $iNC = _WinAPI_HiWord($wParam) $iID = _WinAPI_LoWord($lParam) Switch $iNC Case $BN_CLICKED ; When is control clicked Switch _WinAPI_GetDlgCtrlID($iID) Case _WinAPI_GetDlgCtrlID($btn1) BtnOpenFileClick() Case _WinAPI_GetDlgCtrlID($btn2) BtnExitClick() EndSwitch EndSwitch ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; EndSwitch Return _WinAPI_DefWindowProc($_hwnd, $iMsg, $wParam, $lParam) EndFunc ;==>WindowCallback Func FinalizeApp() _WinAPI_DeleteObject($fnt1) _WinAPI_DestroyWindow($hwnd) __WinAPI_UnregisterClass($WinClass) EndFunc ;==>FinalizeApp Func _CreateFont($fontName, $height = 16, $style = $FW_NORMAL, $italic = False, $underline = False, $strikeout = False) Local $hFont = _WinAPI_CreateFont($height, 0, 0, 0, $style, $italic, $underline, $strikeout, $DEFAULT_CHARSET, _ $OUT_DEFAULT_PRECIS, $CLIP_DEFAULT_PRECIS, $DEFAULT_QUALITY, $DEFAULT_PITCH, $fontName) Return $hFont EndFunc ;==>_CreateFont ;=================================================================; ; WINDOW EVENTS ;=================================================================; Func BtnOpenFileClick() Local $ret = _WinAPI_GetOpenFileName(«», «Text files (*.txt)|All files (*.*)», «.», «», «», 1, 0, 0, $hwnd) If ($ret[0] > 0) Then Local $path = $ret[1] & «\» & $ret[2] Local $file = _WinAPI_CreateFile($path, 2, 2) Local $buf = DllStructCreate(«byte[» & _WinAPI_GetFileSizeEx($file) & «]») Local $i = 0 _WinAPI_ReadFile($file, DllStructGetPtr($buf), _WinAPI_GetFileSizeEx($file), $i) ; Close file handle _WinAPI_CloseHandle($file) _WinAPI_SetWindowText($edit1, BinaryToString(DllStructGetData($buf, 1))) EndIf EndFunc ;==>BtnOpenFileClick Func BtnExitClick() FinalizeApp() Exit EndFunc ;==>BtnExitClick Hi everyone, |