ErrorLevel是为了判断命令运行成功与否而内置的一个变量(不过,并不是所有的命令都会改变ErrorLevel的值)。当值为0时通常代表成功,而其他的时意味着失败。你也可以自己定义ErrorLevel的值。
要特别注意的就是 RunWait 命令在它所运行的程序中将ErrorLevel设置成了退出代码。大部分程序在他们成功完成之后都会产生一个退出代码 0。
每个 线程 都保留了它自己的ErrorLevel值,意味着如果 当前线程 被其他的线程中断后,当原线程恢复时它还保持原有的ErrorLevel值,而不会被中断线程修改原有的ErrorLevel值。
备注:由于一些命令将ErrorLevel的值设置成大于1,所以最好不要检查ErrorLevel是否为1,而是检查它是否为0来代替。
例子:
WinWait, MyWindow, , 1
if ErrorLevel ; 也就是说它既不是空值,也不是0.
MsgBox, The window does not exist.
else
MsgBox, The window exists.
翻译:hsudatalks