When you start AutoIt you will be asked to open a script file. A script file is a simple text file containing AutoIt keywords and functions that tell AutoIt what you want it to do. Script files are created in a simple text
editor such as notepad.exe but there is a much better alternative in a specially modified version of the SciTE editor.
Although AutoIt v3 scripts are just plain-text files they are usually given the file extension .au3 to differentiate between a script and a plain text file. If you used the full installer to install AutoIt you can execute an AutoIt script simply by double-clicking it. There are also various options to open, edit, or compile a script if you right-click on the .au3 file.
Here is an example script. Notice that ; is used for commenting sections of code:@@SyntaxHighlighting@@ #include
More complicated scripts can introduce functions. These are usually placed towards the end of a script or below the Global variable declaration section.@@SyntaxHighlighting@@ #include
Passing command line parameters to your own executable is achievable in AutoIt. Passed commandline parameters can be viewed by using the constant variables $CmdLine and $CmdLineRaw. Assigning these variables with new data will cause AutoIt to
return an error, as these cannot be changed during the script's execution. Note that both variables exist whether commandline parameters are passed or not.
The special array $CmdLine is initialized at the start of the script with the command line parameters passed to your AutoIt script. If running your script instead of the executable, then the ScriptName.au3 willl be ignored as a parameter.
If you're passing strings with spaces, then you will need to escape these using "double quotes" in your commandline string.
The AutoIt3.exe interpreter, or the interpreter stub of any compiled Autoit script, can normally be used to run AutoIt scripts directly from the command line. In all cases the /ErrorStdOut switch allows the redirection of a fatal error to StdOut which can then be captured by an application such as the SciTE editor. This switch can be used with both the interpreter and a compiled script.
Run a script using the interpreter:
AutoIt3.exe [/ErrorStdOut] [/AutoIt3ExecuteScript] filename [params ...] Execute the AutoIt3 script 'filename' with optional parameters
At its simplest: AutoIt3.exe myScript.au3 will run a standard AutoIt script 'myScript.au3' with no parameters.
Run a compiled script:
Compiled.exe [/ErrorStdOut] [params ...]
Execute a compiled AutoIt3 Script File produced with Aut2Exe.
Run a single line of code:
AutoIt3.exe [/ErrorStdOut] /AutoIt3ExecuteLine "command line"
Execute one line of code.
The command below will execute that single line of code and display the MsgBox with "Hello World!". The tray icon will not be displayed.
Run a script using another compiled script:
Compiled.exe [/ErrorStdOut] /AutoIt3ExecuteScript file [params ...]
Execute another AutoIt script file from a compiled AutoIt3 executable.
Compiled.exe [/ErrorStdOut] /AutoIt3ExecuteLine "command line"
Execute one line of code as with AutoIt3.exe above.
This means that there is no need to have a copy of AutoIt3.exe in addition to the compiled file - the interpreter stub of the compiled file will replace it. So as long as there is at least one compiled script available, other AutoIt scripts can be run without the need to have AutoIt3.exe on the machine., either pre-installed or added via FileInstall.
However, the executable must have been compiled with the #pragma compile(AutoItExecuteAllowed, True) directive as the default setting does not permit use of the /AutoItExecuteScript or /AutoItExecuteLine parameters. Moreover, since the interpreter stub searches for any required standard #include files in its current folder, UDF functions and various constants may not be available as those files are normally only found in the full AutoIt install. It is therefore recommended that any scripts intended to be run in this manner are compiled to the .a3x format rather then being left as plain .au3 text files
Correct usage of single and double quotation marks is important when using the command line - even for double single quotation marks.