如何从AutoHotkey脚本返回值?

ant*_*123 6 autohotkey return

我需要调用一个返回值的AutoHotkey脚本.

例如,像这样:

return_val = Shell("AutoHotKey.exe script.ahk")
Run Code Online (Sandbox Code Playgroud)

我的脚本看起来像这样:

IfExists, filename
     return 1
Else
     return 0
Run Code Online (Sandbox Code Playgroud)

我收到一个错误,告诉我在终止return语句中没有值.我也尝试使用Exit语句而不是return.

如何从AutoHotkey脚本返回值?

Gar*_*hes 7

要返回退出代码,您需要调用ExitApp以及所需的代码.使用IfExist确定文件是否存在.这意味着您调用的脚本应如下所示:

IfExist, c:\test.txt
    ExitApp, 1
Else
    ExitApp 0
Run Code Online (Sandbox Code Playgroud)

调用脚本时,您应该使用RunWait并将UseErrorLevel参数传递给它.ErrorLevel如果正确启动,则将变量设置为被调用进程的退出代码,如果无法启动进程,则将该文本设置为文本ERROR.

RunWait, C:\Program Files (x86)\AutoHotkey\AutoHotkey.exe "C:\script.ahk",, UseErrorLevel
MsgBox %ErrorLevel%
Run Code Online (Sandbox Code Playgroud)

在此示例中,如果文件存在,消息框将显示"1",否则将显示"0".