2014-11-05 62 views
2
tell application "System Events" 
    if UI elements enabled is true then 
     tell application "System Preferences" 
      activate 
      set current pane to pane id "com.apple.preference.universalaccess" 
      display dialog "This script requires access for assistive evices be enabled." & return & return & "To continue, click the OK button and enter an administrative password in the forthcoming security dialog." with icon 1 
     end tell 
     set UI elements enabled to true 

     if UI elements enabled is false then return "user cancelled" 
     delay 1 
    end if 
end tell 

当我运行这个,我得到一个错误。 “无法将启用应用程序的UI元素设置为真”如何在Applescript中将UI元素设置为true?

任何想法可能会发生这种情况?

附加信息:OS X Yosemite

回答

0

我刚刚为某人最近回答了这个基本问题。看到我的回答here

0

启用的UI元素是自OS X Mavericks以来的只读属性。试试这个:

tell application "System Events" 
    if not UI elements enabled then 
     display dialog "This script requires access for assistive devices be enabled." & return & return & "To continue, click the OK button and enter an administrative password in the forthcoming security dialog." with icon 2 
     if button returned of result is equal to "OK" then 
      do shell script "sudo sqlite3 'Library/Application Support/com.apple.TCC/TCC.db' 'insert or replace into access values (\"kTCCServiceAccessibility\",\"com.apple.ScriptEditor2\",0,1,0,null);'" with administrator privileges 
     end if 
    end if 
end tell 
相关问题