Applescript com.automator.runner.xpc不允许辅助访问-运行快速操作时无法单击

Applescript com.automator.runner.xpc不允许辅助访问-运行快速操作时无法单击,applescript,Applescript,我有一个运行AppleScript程序的快速操作,需要单击一个按钮。但是,当它进入单击阶段时,会显示一条错误消息: 不允许com.automator.runner.xpc进行辅助访问 我尝试在“系统首选项”>“安全和隐私”>“完整磁盘访问”下授予它权限,但它只允许我将应用程序添加到列表中,而这是一项快速操作(服务) 它应该只是单击了按钮,但返回了上面给出的错误消息 你知道为什么这不起作用吗?我有没有办法让com.automator.runner.xpc完全访问磁盘?这是一个已知的automato

我有一个运行AppleScript程序的快速操作,需要单击一个按钮。但是,当它进入单击阶段时,会显示一条错误消息:

不允许com.automator.runner.xpc进行辅助访问

我尝试在“系统首选项”>“安全和隐私”>“完整磁盘访问”下授予它权限,但它只允许我将应用程序添加到列表中,而这是一项快速操作(服务)

它应该只是单击了按钮,但返回了上面给出的错误消息


你知道为什么这不起作用吗?我有没有办法让com.automator.runner.xpc完全访问磁盘?

这是一个已知的automator服务问题,其中包含AppleScript操作。我想看门人不喜欢它们,因为它看起来像代码注入

解决方法(直到苹果采取措施解决问题)是在您的操作中使用AppleScript并将其转换为独立的AppleScript应用程序:将代码复制到脚本编辑器中并保存文件,从“文件格式”菜单中选择“应用程序”。将此脚本应用程序添加到可访问性安全窗格-系统首选项->安全和隐私->隐私->可访问性-并且它应该通过GateKeeper的检查。然后,您可以根据设置进行选择:

  • 在Automator中创建调用应用程序的快速操作
  • 创建一个正常的快速操作,并使用启动应用程序操作来运行脚本应用程序。在Finder预览窗格中,这可以作为服务或快速操作使用

  • 将脚本应用程序本身转化为服务
  • 在Finder中,找到脚本应用程序,然后从上下文菜单中选择“显示软件包内容”。深入到文件“info.plist”,在纯文本编辑器中打开它,并在新的键值单位中进行编辑,如下所示:

    
    [...]
    NSS服务
    NSBackgroundColorName
    背景
    NSMenuItem
    违约
    服务名称
    NSMessage
    跑
    

    。。。确保不删除或损坏脚本编辑器为脚本应用程序生成的任何默认xml。保存修改后的info.plist文件,将脚本应用程序放在~/Library/Services中。这似乎只是一项服务(我无法让它们显示在扩展首选项窗格中)。

    这不是把关人问题,而是沙箱问题。(GK阻止未经批准启动新下载的可执行文件;沙盒调解可执行文件对外部资源的访问。)苹果当前沙盒架构的一个限制是,它只适用于GUI应用程序级别;无法对非GUI进程(如运行特定用户脚本的脚本语言解释器)进行自定义沙箱。祈求好运,到10.16的时候,这个问题会得到解决;在此之前,正如您所说,解决方法是将脚本保存为一个具有自己唯一bundle ID的.app。非常感谢!我将它制作成一个应用程序,授予应用程序权限,并创建了一个调用它的快速操作,它工作得非常完美。
    tell application "System Events"
        tell process "NotificationCenter"
             click button "End" of window 1
       end tell
    end tell