# Function Reference

Below is a complete list of the functions available in AutoIt. Click on a function name for a detailed description.

See Function Notes for details on usage.

Function | Description
--- | ---
Abs | Calculates the absolute value of a number.
ACos | Calculates the arcCosine of a number.
AdlibRegister | Registers an Adlib function.
AdlibUnRegister | Unregisters an adlib function.
Asc | Returns the ASCII code of a character.
AscW | Returns the unicode code of a character.
ASin | Calculates the arcsine of a number.
Assign | Assigns a variable by name with the data.
ATan | Calculates the arctangent of a number.
AutoItSetOption, Opt | Changes the operation of various AutoIt functions/parameters.
AutoItWinGetTitle | Retrieves the title of the AutoIt window.
AutoItWinSetTitle | Changes the title of the AutoIt window.
Beep | Plays back a beep to the user.
Binary | Returns the binary representation of an expression.
BinaryLen | Returns the number of bytes in a binary variant.
BinaryMid | Extracts a number of bytes from a binary variant.
BinaryToString | Converts a binary variant into a string.
BitAND | Performs a bitwise AND operation.
BitNOT | Performs a bitwise NOT operation.
BitOR | Performs a bitwise OR operation.
BitRotate | Performs a bit shifting operation, with rotation.
BitShift | Performs a bit shifting operation.
BitXOR | Performs a bitwise exclusive OR (XOR) operation.
BlockInput | Disable/enable the mouse and keyboard.
Break | Enables or disables the users' ability to exit a script from the tray icon menu.
Call | Calls a user-defined or built-in function contained in first parameter.
CDTray | Opens or closes the CD tray.
Ceiling | Returns a number rounded up to the next integer.
Chr | Returns a character corresponding to an ASCII code.
ChrW | Returns a character corresponding to a unicode code.
ClipGet | Retrieves text from the clipboard.
ClipPut | Writes text to the clipboard.
ConsoleRead | Read from the STDIN stream of the AutoIt script process.
ConsoleWrite | Writes data to the STDOUT stream. Some text editors can read this stream as can other programs which may be expecting data on this stream.
ConsoleWriteError | Writes data to the STDERR stream. Some text editors can read this stream as can other programs which may be expecting data on this stream.
ControlClick | Sends a mouse click command to a given control.
ControlCommand | Sends a command to a control.
ControlDisable | Disables or "grays-out" a control.
ControlEnable | Enables a "grayed-out" control.
ControlFocus | Sets input focus to a given control on a window.
ControlGetFocus | Returns the ControlRef# of the control that has keyboard focus within a specified window.
ControlGetHandle | Retrieves the internal handle of a control.
ControlGetPos | Retrieves the position and size of a control relative to its window.
ControlGetText | Retrieves text from a control.
ControlHide | Hides a control.
ControlListView | Sends a command to a ListView32 control.
ControlMove | Moves a control within a window.
ControlSend | Sends a string of characters to a control.
ControlSetText | Sets text of a control.
ControlShow | Shows a control that was hidden.
ControlTreeView | Sends a command to a TreeView32 control.
Cos | Calculates the cosine of a number.
Dec | Returns a numeric representation of a hexadecimal string.
DirCopy | Copies a directory and all sub-directories and files (Similar to xcopy).
DirCreate | Creates a directory/folder.
DirGetSize | Returns the size in bytes of a given directory.
DirMove | Moves a directory and all sub-directories and files.
DirRemove | Deletes a directory/folder.
DllCall | Dynamically calls a function in a DLL.
DllCallAddress | Dynamically calls a function at a specific memory address.
DllCallbackFree | Frees a previously created handle created with DllCallbackRegister.
DllCallbackGetPtr | Returns the pointer to a callback function that can be passed to the Win32 API.
DllCallbackRegister | Creates a user-defined DLL Callback function.
DllClose | Closes a previously opened DLL.
DllOpen | Opens a DLL file for use in DllCall.
DllStructCreate | Creates a C/C++ style structure to be used in DllCall.
DllStructGetData | Returns the data of an element of the struct.
DllStructGetPtr | Returns the pointer to the struct or an element in the struct.
DllStructGetSize | Returns the size of the struct in bytes.
DllStructSetData | Sets the data of an element in the struct.
DriveGetDrive | Returns an array containing the enumerated drives.
DriveGetFileSystem | Returns File System Type of a drive.
DriveGetLabel | Returns Volume Label of a drive, if it has one.
DriveGetSerial | Returns Serial Number of a drive.
DriveGetType | Returns drive type.
DriveMapAdd | Maps a network drive.
DriveMapDel | Disconnects a network drive.
DriveMapGet | Retrieves the details of a mapped drive.
DriveSetLabel | Sets the Volume Label of a drive.
DriveSpaceFree | Returns the free disk space of a path in Megabytes.
DriveSpaceTotal | Returns the total disk space of a path in Megabytes.
DriveStatus | Returns the status of the drive as a string.
EnvGet | Retrieves an environment variable.
EnvSet | Writes an environment variable.
EnvUpdate | Refreshes the OS environment.
Eval | Return the value of the variable defined by a string.
Execute | Execute an expression.
Exp | Calculates e to the power of a number.
FileChangeDir | Changes the current working directory.
FileClose | Closes a previously opened file.
FileCopy | Copies one or more files.
FileCreateNTFSLink | Creates an NTFS hardlink to a file or a directory.
FileCreateShortcut | Creates a shortcut (.lnk) to a file.
FileDelete | Delete one or more files.
FileExists | Checks if a file or directory exists.
FileFindFirstFile | Creates a search handle, defined by a path and file mask.
FileFindNextFile | Returns the next filename defined by the search handle.
FileFlush | Flushes the file's buffer to disk.
FileGetAttrib | Returns a code string representing a file's attributes.
FileGetEncoding | Determines the text encoding used in a file.
FileGetLongName | Returns the long path+name of the path+name passed.
FileGetPos | Retrieves the current file position.
FileGetShortcut | Retrieves details about a shortcut.
FileGetShortName | Returns the 8.3 short path+name of the path+name passed.
FileGetSize | Returns the size of a file in bytes.
FileGetTime | Returns the time and date information for a file.
FileGetVersion | Returns version information stored in a file.
FileInstall | Include and install a file with the compiled script.
FileMove | Moves one or more files.
FileOpen | Opens a file for reading or writing.
FileOpenDialog | Initiates a Open File Dialog.
FileRead | Read in a number of characters from a previously opened file.
FileReadLine | Read in a line of text from a previously opened text file.
FileReadToArray | Reads the specified file into an array.
FileRecycle | Sends a file or directory to the recycle bin.
FileRecycleEmpty | Empties the recycle bin.
FileSaveDialog | Initiates a Save File Dialog.
FileSelectFolder | Initiates a Browse For Folder dialog.
FileSetAttrib | Sets the attributes of one or more files/directories.
FileSetEnd | Sets the end of the file at the current file position.
FileSetPos | Sets the current file position.
FileSetTime | Sets the timestamp of one of more files.
FileWrite | Write text/data to the end of a previously opened file.
FileWriteLine | Append a line of text to the end of a previously opened text file.
Floor | Returns a number rounded down to the closest integer.
FtpSetProxy | Sets the internet proxy to use for ftp access.
FuncName | Returns the name of a function stored in a variable.
GUICreate | Create a GUI window.
GUICtrlCreateAvi | Creates an AVI video control for the GUI.
GUICtrlCreateButton | Creates a Button control for the GUI.
GUICtrlCreateCheckbox | Creates a Checkbox control for the GUI.
GUICtrlCreateCombo | Creates a ComboBox control for the GUI.
GUICtrlCreateContextMenu | Creates a context menu for a control or entire GUI window.
GUICtrlCreateDate | Creates a date control for the GUI.
GUICtrlCreateDummy | Creates a Dummy control for the GUI.
GUICtrlCreateEdit | Creates an Edit control for the GUI.
GUICtrlCreateGraphic | Creates a Graphic control for the GUI.
GUICtrlCreateGroup | Creates a Group control for the GUI.
GUICtrlCreateIcon | Creates an Icon control for the GUI.
GUICtrlCreateInput | Creates an Input control for the GUI.
GUICtrlCreateLabel | Creates a static Label control for the GUI.
GUICtrlCreateList | Creates a List control for the GUI.
GUICtrlCreateListView | Creates a ListView control for the GUI.
GUICtrlCreateListViewItem | Creates a ListView item.
GUICtrlCreateMenu | Creates a Menu control for the GUI.
GUICtrlCreateMenuItem | Creates a MenuItem control for the GUI.
GUICtrlCreateMonthCal | Creates a month calendar control for the GUI.
GUICtrlCreateObj | Creates an ActiveX control in the GUI.
GUICtrlCreatePic | Creates a Picture control for the GUI.
GUICtrlCreateProgress | Creates a Progress control for the GUI.
GUICtrlCreateRadio | Creates a Radio button control for the GUI.
GUICtrlCreateSlider | Creates a Slider control for the GUI.
GUICtrlCreateTab | Creates a Tab control for the GUI.
GUICtrlCreateTabItem | Creates a TabItem control within an existing tab control in the GUI.
GUICtrlCreateTreeView | Creates a TreeView control for the GUI.
GUICtrlCreateTreeViewItem | Creates a TreeViewItem control for the GUI.
GUICtrlCreateUpdown | Creates an UpDown control for the GUI.
GUICtrlDelete | Deletes a control.
GUICtrlGetHandle | Returns the handle for a control and some special (item) handles (Menu, ContextMenu, TreeViewItem).
GUICtrlGetState | Gets the current state of a control.
GUICtrlRead | Read state or data of a control.
GUICtrlRecvMsg | Send a message to a control and retrieve information in lParam.
GUICtrlRegisterListViewSort | Register a user defined function for an internal listview sorting callback function.
GUICtrlSendMsg | Send a message to a control.
GUICtrlSendToDummy | Sends a message to a Dummy control.
GUICtrlSetBkColor | Sets the background color of a control.
GUICtrlSetColor | Sets the text color of a control.
GUICtrlSetCursor | Sets the mouse cursor icon for a particular control.
GUICtrlSetData | Modifies the data for a control.
GUICtrlSetDefBkColor | Sets the default background color of all the controls of the GUI window.
GUICtrlSetDefColor | Sets the default text color of all the controls of the GUI window.
GUICtrlSetFont | Sets the font for a control.
GUICtrlSetGraphic | Modifies the data for a control.
GUICtrlSetImage | Sets the bitmap or icon image to use for a control.
GUICtrlSetLimit | Limits the number of characters/pixels for a control.
GUICtrlSetOnEvent | Defines a user-defined function to be called when a control is clicked.
GUICtrlSetPos | Changes the position of a control within the GUI window.
GUICtrlSetResizing | Defines the resizing method used by a control.
GUICtrlSetState | Changes the state of a control.
GUICtrlSetStyle | Changes the style of a control.
GUICtrlSetTip | Sets the tip text associated with a control.
GUIDelete | Deletes a GUI window and all controls that it contains.
GUIGetCursorInfo | Gets the mouse cursor position relative to GUI window.
GUIGetMsg | Polls the GUI to see if any events have occurred.
GUIGetStyle | Retrieves the styles of a GUI window.
GUIRegisterMsg | Register a user defined function for a known Windows Message ID (WM_MSG).
GUISetAccelerators | Sets the accelerator table to be used in a GUI window.
GUISetBkColor | Sets the background color of the GUI window.
GUISetCoord | Sets absolute coordinates for the next control.
GUISetCursor | Sets the mouse cursor icon for a GUI window.
GUISetFont | Sets the default font for a GUI window.
GUISetHelp | Sets an executable file that will be run when F1 is pressed.
GUISetIcon | Sets the icon used in a GUI window.
GUISetOnEvent | Defines a user function to be called when a system button is clicked.
GUISetState | Changes the state of a GUI window.
GUISetStyle | Changes the styles of a GUI window.
GUIStartGroup | Defines that any subsequent controls that are created will be "grouped" together.
GUISwitch | Switches the current window used for GUI functions.
Hex | Returns a string representation of an integer or of a binary type converted to hexadecimal.
HotKeySet | Sets a hotkey that calls a user function.
HttpSetProxy | Sets the internet proxy to use for http access.
HttpSetUserAgent | Sets the HTTP user-agent string which is sent with all Inet requests.
HWnd | Converts an expression into an HWND handle.
InetClose | Closes a handle returned from InetGet().
InetGet | Downloads a file from the internet using the HTTP, HTTPS or FTP protocol.
InetGetInfo | Returns detailed data for a handle returned from InetGet().
InetGetSize | Returns the size (in bytes) of a file located on the internet.
InetRead | Downloads a file from the internet using the HTTP, HTTPS or FTP protocol.
IniDelete | Deletes a value from a standard format .ini file.
IniRead | Reads a value from a standard format .ini file.
IniReadSection | Reads all key/value pairs from a section in a standard format .ini file.
IniReadSectionNames | Reads all sections in a standard format .ini file.
IniRenameSection | Renames a section in a standard format .ini file.
IniWrite | Writes a value to a standard format .ini file.
IniWriteSection | Writes a section to a standard format .ini file.
InputBox | Displays an input box to ask the user to enter a string.
Int | Returns the integer (whole number) representation of an expression.
IsAdmin | Checks if the current user has full administrator privileges.
IsArray | Checks if a variable is an array type.
IsBinary | Checks if a variable or expression is a binary type.
IsBool | Checks if a variable's base type is boolean.
IsDeclared | Check if a variable has been declared.
IsDllStruct | Checks if a variable is a DllStruct type.
IsFloat | Checks if the value of a variable or expression has a fractional component.
IsFunc | Checks if a variable or expression is a function type.
IsHWnd | Checks if a variable's base type is a pointer and window handle.
IsInt | Checks if the value of a variable or expression has no fractional component.
IsKeyword | Checks if a variable is a keyword (for example, Default).
IsMap | Checks if a variable is a Map type.
IsNumber | Checks if a variable's base type is numeric.
IsObj | Checks if a variable or expression is an object type.
IsPtr | Checks if a variable's base type is a pointer.
IsString | Checks if a variable is a string type.
Log | Calculates the natural logarithm of a number.
MapAppend | Add an element to a Map variable.
MapExists | Determine whether a key exists within a Map.
MapKeys | Returns an array holding the keys within a Map.
MapRemove | Remove a key and its associated value from a Map.
MemGetStats | Retrieves memory related information.
Mod | Performs the modulus operation.
MouseClick | Perform a mouse click operation.
MouseClickDrag | Perform a mouse click and drag operation.
MouseDown | Perform a mouse down event at the current mouse position.
MouseGetCursor | Returns the cursor ID Number for the current Mouse Cursor.
MouseGetPos | Retrieves the current position of the mouse cursor.
MouseMove | Moves the mouse pointer.
MouseUp | Perform a mouse up event at the current mouse position.
MouseWheel | Moves the mouse wheel up or down.
MsgBox | Displays a simple message box with optional timeout.
Number | Returns the numeric representation of an expression.
ObjCreate | Creates a reference to a COM object from the given classname.
ObjCreateInterface | Creates a reference to an object from the given classname/object pointer, interface identifier and description string.
ObjEvent | Handles incoming events from the given Object.
ObjGet | Retrieves a reference to a COM object from an existing process or filename.
ObjName | Returns the name or interface description of an Object.
OnAutoItExitRegister | Registers a function to be called when AutoIt exits.
OnAutoItExitUnRegister | UnRegisters a function that was called when AutoIt exits.
Ping | Pings a host and returns the roundtrip-time.
PixelChecksum | Generates a checksum for a region of pixels.
PixelGetColor | Returns a pixel color according to x,y pixel coordinates.
PixelSearch | Searches a rectangle of pixels for the pixel color provided.
ProcessClose | Terminates a named process.
ProcessExists | Checks to see if a specified process exists.
ProcessGetStats | Returns an array about Memory or IO infos of a running process.
ProcessList | Returns an array listing the currently running processes (names and PIDs).
ProcessSetPriority | Changes the priority of a process.
ProcessWait | Pauses script execution until a given process exists.
ProcessWaitClose | Pauses script execution until a given process does not exist.
ProgressOff | Turns Progress window off.
ProgressOn | Creates a customizable progress bar window.
ProgressSet | Sets the position and/or text of a previously created Progress bar window.
Ptr | Converts an expression into a pointer variant.
Random | Generates a pseudo-random float-type number.
RegDelete | Deletes a key or value from the registry.
RegEnumKey | Reads the name of a subkey according to its instance.
RegEnumVal | Reads the name of a value according to its instance.
RegRead | Reads a value from the registry.
RegWrite | Creates a key or value in the registry.
Round | Returns a number rounded to a specified number of decimal places.
Run | Runs an external program.
RunAs | Runs an external program under the context of a different user.
RunAsWait | Runs an external program under the context of a different user and pauses script execution until the program finishes.
RunWait | Runs an external program and pauses script execution until the program finishes.
Send | Sends simulated keystrokes to the active window.
SendKeepActive | Attempts to keep a specified window active during Send().
SetError | Manually set the value of the @error macro (and optionally @extended, and "Return Value").
SetExtended | Manually set the value of the @extended macro.
ShellExecute | Runs an external program using the ShellExecute API.
ShellExecuteWait | Runs an external program using the ShellExecute API and pauses script execution until it finishes.
Shutdown | Shuts down the system.
Sin | Calculates the sine of a number.
Sleep | Pause script execution.
SoundPlay | Play a sound file.
SoundSetWaveVolume | Sets the system wave volume by percent.
SplashImageOn | Creates a customizable image popup window.
SplashOff | Turns SplashText or SplashImage off.
SplashTextOn | Creates a customizable text popup window.
Sqrt | Calculates the square-root of a number.
SRandom | Set Seed for random number generation.
StatusbarGetText | Retrieves the text from a standard status bar control.
StderrRead | Reads from the STDERR stream of a previously run child process.
StdinWrite | Writes a number of characters to the STDIN stream of a previously run child process.
StdioClose | Closes all resources associated with a process previously run with STDIO redirection.
StdoutRead | Reads from the STDOUT stream of a previously run child process.
String | Returns the string representation of an expression.
StringAddCR | Takes a string and prefixes all linefeed characters ( Chr(10) ) with a carriage return character ( Chr(13) ).
StringCompare | Compares two strings with options.
StringFormat | Returns a formatted string (similar to the C sprintf() function).
StringFromASCIIArray | Converts an array of ASCII codes to a string.
StringInStr | Checks if a string contains a given substring.
StringIsAlNum | Checks if a string contains only alphanumeric characters.
StringIsAlpha | Checks if a string contains only alphabetic characters.
StringIsASCII | Checks if a string contains only ASCII characters in the range 0x00 - 0x7f (0 - 127).
StringIsDigit | Checks if a string contains only digit (0-9) characters.
StringIsFloat | Checks if a string is a floating point number.
StringIsInt | Checks if a string is an integer.
StringIsLower | Checks if a string contains only lowercase characters.
StringIsSpace | Checks if a string contains only whitespace characters.
StringIsUpper | Checks if a string contains only uppercase characters.
StringIsXDigit | Checks if a string contains only hexadecimal digit (0-9, A-F) characters.
StringLeft | Returns a number of characters from the left-hand side of a string.
StringLen | Returns the number of characters in a string.
StringLower | Converts a string to lowercase.
StringMid | Extracts a number of characters from a string.
StringRegExp | Check if a string fits a given regular expression pattern.
StringRegExpReplace | Replace text in a string based on regular expressions.
StringReplace | Replaces substrings in a string.
StringReverse | Reverses the contents of the specified string.
StringRight | Returns a number of characters from the right-hand side of a string.
StringSplit | Splits up a string into substrings depending on the given delimiters.
StringStripCR | Removes all carriage return values ( Chr(13) ) from a string.
StringStripWS | Strips the white space in a string.
StringToASCIIArray | Converts a string to an array containing the ASCII code of each character.
StringToBinary | Converts a string into binary data.
StringTrimLeft | Trims a number of characters from the left hand side of a string.
StringTrimRight | Trims a number of characters from the right hand side of a string.
StringUpper | Converts a string to uppercase.
Tan | Calculates the tangent of a number.
TCPAccept | Permits an incoming connection attempt on a socket.
TCPCloseSocket | Closes a TCP socket.
TCPConnect | Create a socket connected to an existing server.
TCPListen | Creates a socket listening for an incoming connection.
TCPNameToIP | Converts an Internet name to IP address.
TCPRecv | Receives data from a connected socket.
TCPSend | Sends data on a connected socket.
TCPShutdown, UDPShutdown | Stops TCP/UDP services.
TCPStartup, UDPStartup | Starts TCP or UDP services.
TimerDiff | Returns the difference in time from a previous call to TimerInit().
TimerInit | Returns a handle that can be passed to TimerDiff() to calculate the difference in milliseconds.
ToolTip | Creates a tooltip anywhere on the screen.
TrayCreateItem | Creates a menuitem control for the tray.
TrayCreateMenu | Creates a menu control for the tray menu.
TrayGetMsg | Polls the tray to see if any events have occurred.
TrayItemDelete | Deletes a menu/item control from the tray menu.
TrayItemGetHandle | Returns the handle for a tray menu(item).
TrayItemGetState | Gets the current state of a control.
TrayItemGetText | Gets the itemtext of a tray menu/item control.
TrayItemSetOnEvent | Defines a user-defined function to be called when a tray item is clicked.
TrayItemSetState | Sets the state of a tray menu/item control.
TrayItemSetText | Sets the itemtext of a tray menu/item control.
TraySetClick | Sets the clickmode of the tray icon - what mouseclicks will display the tray menu.
TraySetIcon | Loads/Sets a specified tray icon.
TraySetOnEvent | Defines a user function to be called when a special tray action happens.
TraySetPauseIcon | Loads/Sets a specified tray pause icon.
TraySetState | Sets the state of the tray icon.
TraySetToolTip | (Re)Sets the tooltip text for the tray icon.
TrayTip | Displays a balloon tip from the AutoIt Icon.
UBound | Returns the size of array dimensions or the number of keys in a map.
UDPBind | Create a socket bound to an incoming connection.
UDPCloseSocket | Close a UDP socket.
UDPOpen | Open a socket connected to an existing server .
UDPRecv | Receives data from an opened socket.
UDPSend | Sends data on an opened socket.
VarGetType | Returns the internal type representation of a variant.
WinActivate | Activates (gives focus to) a window.
WinActive | Checks to see if a specified window exists and is currently active.
WinClose | Closes a window.
WinExists | Checks to see if a specified window exists.
WinFlash | Flashes a window in the taskbar.
WinGetCaretPos | Returns the coordinates of the caret in the foreground window.
WinGetClassList | Retrieves the classes from a window.
WinGetClientSize | Retrieves the size of a given window's client area.
WinGetHandle | Retrieves the internal handle of a window.
WinGetPos | Retrieves the position and size of a given window.
WinGetProcess | Retrieves the Process ID (PID) associated with a window.
WinGetState | Retrieves the state of a given window.
WinGetText | Retrieves the text from a window.
WinGetTitle | Retrieves the full title from a window.
WinKill | Forces a window to close.
WinList | Retrieves a list of windows.
WinMenuSelectItem | Invokes a menu item of a window.
WinMinimizeAll | Minimizes all windows.
WinMinimizeAllUndo | Undoes a previous WinMinimizeAll function.
WinMove | Moves and/or resizes a window.
WinSetOnTop | Change a window's "Always On Top" attribute.
WinSetState | Shows, hides, minimizes, maximizes, or restores a window.
WinSetTitle | Changes the title of a window.
WinSetTrans | Sets the transparency of a window.
WinWait | Pauses execution of the script until the requested window exists.
WinWaitActive | Pauses execution of the script until the requested window is active.
WinWaitClose | Pauses execution of the script until the requested window does not exist.
WinWaitNotActive | Pauses execution of the script until the requested window is not active.