如何从 AutoHotkey 脚本返回值?

发布于 2024-12-10 19:53:16 字数 398 浏览 0 评论 0原文

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

例如,如下所示:

return_val = Shell("AutoHotKey.exe script.ahk")

我的脚本如下所示:

IfExists, filename
     return 1
Else
     return 0

我收到一条错误消息,告诉我在终止返回语句中不能有值。我还尝试使用 Exit 语句而不是 return 。

如何从 AutoHotkey 脚本返回值?

I need to call an AutoHotkey script that will return a value.

For example, something like this:

return_val = Shell("AutoHotKey.exe script.ahk")

My script looks like this:

IfExists, filename
     return 1
Else
     return 0

I get an error telling me I can't have a value in the terminating return statement. I have also tried using the Exit statement instead of return.

How can I return a value from an AutoHotkey script?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一影成城 2024-12-17 19:53:16

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

IfExist, c:\test.txt
    ExitApp, 1
Else
    ExitApp 0

调用脚本时,您应使用 RunWait< /a> 并向其传递 UseErrorLevel 参数。如果正确启动,这会将变量 ErrorLevel 设置为被调用进程的退出代码;如果进程无法启动,则设置文本 ERROR

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

在此示例中,如果文件存在,消息框将显示“1”,如果不存在,消息框将显示“0”。

To return an exit code you'll want to call ExitApp along with your desired code. Use IfExist to determine if the file exists. This means the script that you call should look like this:

IfExist, c:\test.txt
    ExitApp, 1
Else
    ExitApp 0

When calling the script you should use RunWait and pass it the UseErrorLevel parameter. This will set the variable ErrorLevel to the exit code of the called process if it launches correctly or the text ERROR if the process cannot be started.

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

In this example the message box will display '1' if the file exists or '0' if it doesn't.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文