ErrorLevel
Das ist eine interne Variable, die gesetzt wird, um den Erfolg oder Misserfolg einiger Befehle zu kennzeichnen (nicht alle Befehle ändern den Wert von ErrorLevel). Ein Wert von 0 zeigt für gewöhnlich Erfolg an, jeder andere Wert Misserfolg. ErrorLevel kann auch vom Benutzer selbst gesetzt werden.
Interessant ist, dass RunWait den ErrorLevel auf den Exit-Code des Programms setzt. Die meisten Programme liefern einen Exit-Code von 0, wenn sie erfolgreich durchgeführt wurden.
Jeder Thread behält seinen eigenen ErrorLevel-Wert. Soll heißen: Wenn der aktuelle Thread von einem anderen unterbrochen wird, hat der ursprüngliche Thread bei Wiederaufnahme immer noch seinen originalen ErrorLevel-Wert, nicht den des unterbrechenden Threads.
Hinweis: Wenn der ErrorLevel einen Wert höher als 1 enthält, dann sollte ErrorLevel darauf überprüft werden, ob er einen Wert ungleich 0 enthält.
Die folgende Liste enthält alle Befehle, Funktionen und GUI/Steuerelement-Ereignisse, die ErrorLevel setzen, einschließlich der möglichen ErrorLevel-Werte:
Sprachelement |
ErrorLevel-Werte |
ClipWait | 0, 1 |
Control | 0, 1 |
ControlClick | 0, 1 |
ControlFocus | 0, 1 |
ControlGet | 0, 1 |
ControlGetFocus | 0, 1 |
ControlGetText | 0, 1 |
ControlMove | 0, 1 |
ControlSend / ControlSendRaw | 0, 1 |
ControlSetText | 0, 1 |
DllCall() | 0, -1, -2, -3, -4, n, An |
Drive | 0, 1 |
DriveGet | 0, 1 |
EnvSet | 0, 1 |
EnvUpdate | 0, 1 |
FileAppend | 0, 1 |
FileCopy | 0, n |
FileCopyDir | 0, 1 |
FileCreateDir | 0, 1 |
FileCreateShortcut | 0, 1 |
FileDelete | 0, n |
FileGetAttrib | 0, 1 |
FileGetShortcut | 0, 1 |
FileGetSize | 0, 1 |
FileGetTime | 0, 1 |
FileGetVersion | 0, 1 |
FileInstall | 0, 1 |
FileMove | 0, n |
FileMoveDir | 0, 1 |
FileRead | 0, 1 |
FileReadLine | 0, 1 |
FileRecycle | 0, 1 |
FileRecycleEmpty | 0, 1 |
FileRemoveDir | 0, 1 |
FileSelectFile | 0, 1 |
FileSelectFolder | 0, 1 |
FileSetAttrib | 0, n |
FileSetTime | 0, 1 |
GroupActivate | 0, 1 |
Gui: GuiSize-Ereignis | 0, 1, 2 |
Gui: GuiDropFiles-Ereignis | 0, n |
GuiControl | 0, 1 |
GuiControlGet | 0, 1 |
Gui-Steuerelement: Link-Click-Ereignis | Zeichenkette |
Gui-Steuerelement: Custom-Ereignis | 0, n |
Gui-Steuerelement: ListView-Element-Änderungs-Ereignis | Teilmenge von "SsFfCc" |
Hotkey | 0, 1, 2, 3, 4, 5, 6, 98, 99 |
ImageSearch | 0, 1, 2 |
IniDelete | 0, 1 |
IniWrite | 0, 1 |
Input | 0, 1, NewInput, Max, Timeout, Match, EndKey:Name |
InputBox | 0, 1, 2 |
KeyWait | 0, 1 |
Menu | 0, 1 |
PixelGetColor | 0, 1 |
PixelSearch | 0, 1, 2 |
PostMessage | 0, 1 |
Process | 0, PID |
RegDelete | 0, 1 |
RegExMatch() | 0, Zeichenkette, -n |
RegExReplace() | 0, Zeichenkette, -n |
RegRead | 0, 1 |
RegWrite | 0, 1 |
Run | 0, ERROR |
RunWait | n, ERROR |
SendMessage | FAIL, n |
SetWorkingDir | 0, 1 |
Sort: U-Option | 0, n |
SoundGet | 0, Zeichenkette |
SoundGetWaveVolume | 0, 1 |
SoundPlay | 0, 1 |
SoundSet | 0, Zeichenkette |
SoundSetWaveVolume | 0, 1 |
StatusBarGetText | 0, 1 |
StatusBarWait | 0, 1, 2 |
StringGetPos | 0, 1 |
StringReplace | 0, 1, n |
UrlDownloadToFile | 0, 1 |
WinGetText | 0, 1 |
WinMenuSelectItem | 0, 1 |
WinSet Style/ExStyle/Region | 0, 1 |
WinWait | 0, 1 |
WinWaitActive / WinWaitNotActive | 0, 1 |
WinWaitClose | 0, 1 |
Beispiele
Wartet maximal 1 Sekunde, bis MeinFenster existiert. Wenn WinWait das Zeitlimit überschreitet, wird ErrorLevel auf 1 gesetzt, ansonsten auf 0.
WinWait, MeinFenster,, 1
if ErrorLevel ; also nicht leer oder 0.
MsgBox, Das Fenster ist nicht vorhanden.
else
MsgBox, Das Fenster ist vorhanden.