2011-10-17 84 views
6

我需要調用一個將返回值的AutoHotkey腳本。如何從AutoHotkey腳本返回值?

例如,這樣的事情:

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

我的劇本是這樣的:

IfExists, filename 
    return 1 
Else 
    return 0 

我得到一個錯誤,告訴我,我不能在終端return語句的值。我也嘗試使用Exit聲明而不是返回。

如何從AutoHotkey腳本返回值?

回答

6

要返回退出代碼,您需要連同您想要的代碼一起撥打ExitApp。使用IfExist來確定文件是否存在。這意味着,你叫應該是這樣的腳本:

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

當調用腳本,你應該使用RunWait,並將它傳遞的UseErrorLevel參數。這將設置變量ErrorLevel爲被調用進程的退出代碼,如果該進程無法啓動,或者文本爲ERROR

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

在本例中,如果文件存在,消息框將顯示'1',否則顯示'0'。