ErrorLevel

AutoHotKey

ErrorLevel

这是表示一些命令执行成功与否的内置变量(有些命令不会改变 ErrorLevel 的值).值为 0 时通常表示成功, 而其他值一般表示失败. 您也可以自己设置 ErrorLevel 的值.

特别有意义的是 RunWait 会把 ErrorLevel 设置为它所运行程序的退出代码. 大多数程序在成功完成时会产生退出代码零.

每个 线程 会保持它自己的 ErrorLevel 的值, 这意味着如果 当前线程 被其他线程中断, 那么当原始线程恢复时它仍会拥有它原来的 ErrorLevel 值, 而不是由中断线程设置的 ErrorLevel 值.

注意: 由于一些命令会设置大于 1 的 ErrorLevel 值, 所以最好不要检查 ErrorLevel 是否大于 1, 而是检查它是否等于零.

示例

WinWait, MyWindow, , 1
if ErrorLevel   ; 即既不是空值, 也不是零.
    MsgBox, The window does not exist.
else
    MsgBox, The window exists.