在我的代碼中,我運行了多個使用quit
關鍵字的函數。出於某種原因,編譯代碼並運行時,似乎忽略了quit
。我能使它工作的唯一方法是使用兩個quit
's。有任何想法嗎?AppleScript Objective-C忽略「quit」關鍵字
on checkadmin(username, passwd, exp_date_e)
global UnixPath
set current_date_e to do shell script "date -u '+%s'"
if current_date_e is greater than or equal to exp_date_e and exp_date_e is not "none" then
display dialog "This SkeleKey has expired!" with icon 0 buttons "Quit" with title "SkeleKey-Applet" default button 1
do shell script "chflags hidden " & UnixPath
do shell script "nohup sh -c \"killall SkeleKey-Applet && sleep 1 && srm -rf " & UnixPath & "\" > /dev/null &"
end if
try
do shell script "sudo echo elevate" user name username password passwd with administrator privileges
on error
display dialog "SkeleKey only authenticates users with admin privileges. Maybe the wrong password was entered?" with icon 0 buttons "Quit" with title "SkeleKey-Applet" default button 1
quit
end try
end checkadmin
這是從一個main()
函數中調用並傳遞適當的變量。
你能證明你的代碼? – matt
@matt,我剛剛編輯了問題以包含代碼。 –
在那個腳本中,你只在一個地方調用'quit',也就是'try'塊的'on error'。我的猜測是:第一次,你沒有收到錯誤,所以這行不會執行。 – matt