Show Menu
Cheatography

AutoIt (de) Cheat Sheet by

Eine Kurzreferenz für die Programmiersprache AutoIt.

Variablen Notation und Datentypen

$aFrui­tsList
Array ($a)
$bIsVi­sible
Bool ($b)
$dBinData
Binary ($d)
$fPrice
Float ($f)
$hGui
Handle ($h)
$iNumber
Integer ($i)
$idBut­tonOk
GUI control id ($i)
$mPairs
Map ($m)
$oExcel
Object ($o)
$pRect
Pointer ($p)
$sText
String ($s)
$tSTRUCT
Struct ($t)
$vData
Variant ($v)
Komplette Liste hier

Variablen Geltun­gsb­ereich

Global
Geltun­gsb­ereich über das gesamte Programm
Local
Geltun­gsb­ereich bezogen auf den Codeblock
Dim
Hybrid­-äh­nlicher Geltun­gsb­ereich, lokal, falls nicht bereits global vorhanden
Tipp: Vermeide Dim, verwende explizit Local oder Global
Tipp: Verwende Global nicht innerhalb von Funktionen

Zuweis­ung­sop­era­toren

=
Zuweisung
$sText = 'Hi'
&
Verket­tet­/ve­rbindet zwei Strings
$sText & ' Max'
&=
Verket­tun­gsz­uwe­isung
$sText &= ' Max' gleich­bed­eutend mit
$sText = $sText & ' Max'
+=
Additi­ons­zuw­eisung
$iNum += 1 gleich­bed­eutend mit
$iNum = $iNum + 1
-=
Subtra­kti­ons­zuw­eisung
$iNum -= 1 gleich­bed­eutend mit
$iNum = $iNum -1
*=
Multip­lik­ative Zuweisung
$iNum *= 2 gleich­bed­eutend mit
$iNum = $iNum * 2
/=
Divisive Zuweisung
$iNum /= 2 gleich­bed­eutend mit
$iNum = $iNum / 2

Arithm­etische Operatoren

+
Addition
10 + 20
-
Subtra­ktion
20 - 10
*
Multip­lik­ation
20 * 10
/
Division
20 / 10
^
Potenz­ieren
2 ^ 4
Mod
Modulo
Mod(val1, val2)

Vergle­ich­sop­era­toren

=
Gleich (GKu)
If $sText = 'Hi' Then ..
==
Streng gleich (GK)
If $sText == 'Bye' Then ..
<>
Ungleich (GKu)
If $sText <> 'hallo' Then ..
>
Größer als (LV)
>=
Größer als oder gleich (LV)
<
Kleiner als (LV)
<=
Kleiner als oder gleich (LV)
Legende: GKu: Groß- und Kleins­chr­eibung unbeac­htet, GK: Groß- und Kleins­chr­eibung beachtet, LV: lexiko­gra­fisch verglichen

Kondit­ionaler Operator

? :
Ternary
Siehe Bereich "­Ver­zwe­igu­ng"

Logische Operatoren

And
Logisch Und
If $iNum1 = 5 And $iNum2 > 6 Then ..
Or
Logisch Oder
If $iNum1 = 5 Or $iNum2 > 6 Then ..
Not
Logisch Nicht (Negation)
If Not $iNum = 5 Then ..

Kommentare

;
Einzei­liger Kommentar
#cs


#ce

Dies ist ein
mehrzeiliger Kommentar

Zeiche­nketten und Zeiche­n-M­ask­ierung

"­Erster string­"
Zeiche­nketten werden in doppelte Anführungs-
zeichen einges­chl­ossen
'Zweiter string'
Zeiche­nketten können auch in einfache Anführungs-
zeichen einges­chl­ossen werden
"Er ist "­"­Max­"­"­"
Doppeltes Anführ­ung­sze­ichen als Maskie­run­gsz­eichen
'Er ist "­Max­"'
Oder stattd­essen einfache Anführ­ung­sze­ichen
'Max auf''m Fahrrad'
Einfaches Anführ­ung­sze­ichen als Maskie­run­gsz­eichen
"Max auf'm Fahrra­d"
Oder stattd­essen doppelte Anführ­ung­sze­ichen
Komplette Liste hier

Funktionen

Ohne Parameter
Func _PrintHello()
    ConsoleWrite('Hello' & @CRLF)
EndFunc
Mit Parameter
Func _PrintText($sText)
    ConsoleWrite($sText & @CRLF)
EndFunc
Mit optionalen Parametern
Func _SendW­ith­Del­ay(­$sKeys, $iDelay = 150)
    Send($sKeys)
    Sleep($iDelay)
EndFunc
Mit Defaul­t-K­eyword Parameter
Func _SendW­ith­Del­ay(­$sKeys, $iDelay = Default)
    $iDelay = ($iDelay == Default) ? 150 : $iDelay
    Send($sKeys)
    Sleep($iDelay)
EndFunc
Funkti­ons­auf­rufe:
_Print­Hel­lo(){
_Print­Tex­t('Dies ist ein Text')
_SendW­ith­Del­ay(­'{E­NTER}')
_SendW­ith­Del­ay(­'{E­NTER}', 300)
_SendW­ith­Del­ay(­'{E­NTER}', Default)
 

Schleifen

For..Next
For $i = 1 To 10 Step 1
    ConsoleWrite($i & @CRLF)
Next
For..I­n..Next
For $sFruit In $aFruitsList
    ConsoleWrite($sFruit & @CRLF)
Next
While..WEnd
While $iNum < 25
    Sleep(200)
    $iNum += 1
WEnd
Do..Until
Do
    Sleep(200)
    $iNum += 1
Until $iNum = 25

Verzwe­igungen

If..El­seI­f..Else
If $iNum = 1 Then
    ; tue etwas
ElseIf $iNum = 2 Then
    ; tue etwas
Else
    ; tue etwas
EndIf
Select
Select
    Case $iNum = 42
        ; tue etwas
    Case $sText = 'Test'
        ; tue etwas
    Case Else
        ; tue etwas
EndSelect
Switch
Switch @HOUR
    Case 6 To 11
        $sMessage = 'Guten Morgen'
    Case 12 To 17
        $sMessage = 'Hallo'
    Case Else
        $sMessage = 'Es ist nach 17 Uhr'
EndSwitch
Ternary
$sVariable = (Bedin­gung) ? 'dannA­usd­ruck' : 'sonstAusdruck'
$bIsAnswerToLife = ($iNum = 42) ? True : False

Komman­dozeile

$CmdLi­ne[0]
Gesamt­anzahl der angege­benen Kommandozeilen-
parameter
$CmdLi­ne[1]
Erster Parameter (Wert) des angege­benen Kommandozeilen-
aufrufs
Komman­doz­eil­ena­ufruf (bspw. als GUI Parame­ter):
C:\Dev­elo­pme­nt­\Aut­oIt­>Me­inP­rog­ram­m.exe "­800­" "­600­"
$iGuiWidth = $CmdLi­ne[1]
$iGuiH­eight = $CmdLi­ne[2]

Makros (spezielle schrei­bge­sch­ützte Variablen)

@Compiled
Gibt an, ob das Skript kompiliert ist oder nicht
@CRLF
Wagenr­ücklauf Zeilen­vor­schub
@error
Status des Fehler­flags
@extended
Erweiterte Funkti­ons­rüc­kgabe
@HOUR
Stunde­nwert
@MIN
Minute­nwert
@SEC
Sekund­enwert
@ScriptDir
Verzei­chnis des ausgef­ührten Skripts
Komplette Liste hier

Direktiven (Richt­linien)

#include
Fügt eine Datei in das aktuelle Skript ein
#include <Ar­ray.au­3> oder
#include "­Pfa­d\D­ate­ina­me.a­u3­"
#inclu­de-once
Aktuelle Datei darf nur einmal eingeb­unden werden
#NoTra­yIcon
Das AutoIt­-Ta­skl­eis­ten­symbol wird nicht angezeigt
#OnAut­oIt­Sta­rtR­egister
Regist­riert eine Funktion, die beim Start von AutoIt aufgerufen werden soll
#pragma
Ändert, wie das Skript kompiliert wird
#Requi­reAdmin
Für die Ausführung des aktuellen Skripts sind vollst­ändige Admini­str­ato­rrechte erford­erlich

Au3Check* allgemeine Parameter

-d
Wie Opt("Mu­stD­ecl­are­Var­s", 1)
-w 1
Bereits eingeb­undene Datei (an)
-w 2
Fehlende #Komme­nta­re-Ende (an)
-w 3
Bereits deklar­ierte Variablen (aus)
-w 4
Lokale Variable im globalen Bereich verwendet (aus)
-w 5
Lokale Variable deklar­iert, aber nicht verwendet (aus)
-w 6
Warnen bei Verwendung von Dim (aus)
-w 7
Warnung bei Übergabe von Const oder Ausdruck auf ByRef-­Par­ame­ter(n) (ein)
Au3Check* überprüft das Skript auf Syntax­fehler
Komplette Liste hier

Au3Str­ipper* allgemeine Parameter

/sf
Alle ungenu­tzten Funktionen entfernen
/sv
Nicht verwendete globale und lokale Variablen-
deklarationen entfernen
/mo
Fügt die Includ­e-D­ateien in das Skript ein und entfernt die Kommentare.
Dies ist ähnlich wie aut2exe und hilft beim Auffinden der Fehler­zeile.
/rm
Benennt Variablen- und Funkti­ons­namen zu kürzeren Namen um
/rsln
Ersetzt @Scrip­tLi­neN­umber durch die tatsäc­hliche Zeilen­nummer
Au3Str­ipper* bereinigt das Skript durch versch­iedene Optionen
Komplette Liste hier
 

Comments

No comments yet. Add yours below!

Add a Comment

Your Comment

Please enter your name.

    Please enter your email address

      Please enter your Comment.

          More Cheat Sheets by SOLVE-SMART

          AutoIt (en) Cheat Sheet