macOS Mojave,Automator:“不被授权向系统事件发送Apple事件。”

58

我升级到了Mojave后,无法再使用之前一直在使用的自动化服务,并显示如下警告。 enter image description here

  • 在“安全与隐私”中,我已经勾选了AppleScript Editor。

你是否看出我的代码存在问题,还是新版本macOS的问题?

脚本

on run {input, parameters}
set pathList to {}
repeat with itemNum from 1 to count of input
    tell application "System Events"
        copy POSIX path of (container of (item itemNum of input)) to end of pathList
    end tell
end repeat
return pathList
end run

在此输入图片描述

在此输入图片描述

14个回答

1
我在Mojave发布几个月后仍然遇到发送按键的问题。奇怪的是,对我来说,解决方法是进入系统偏好设置 -> 安全性与隐私 -> 隐私选项卡 -> 用密码解锁 -> 从可访问性行中的应用程序列表中删除Automator(使用减号按钮)。也许是因为运行测试版时需要删除某些内容,以便我的脚本可以再次发送按键。 编辑:退出系统偏好设置后,我又遇到了警报错误。目前重新将Automator.app添加到可访问性行似乎已经解决了这个问题。

难以置信这是唯一有效的方法(删除并重新添加自动化程序)。 - Ilan

1

我在运行一个简单的smb挂载脚本时,在Mojave 10.14.6上收到了“执行错误:未被授权向Finder发送Apple事件。 (-1743)”。

此外,没有应用程序能够向任何安全列表中添加安全条目。例如,Microsoft Teams无法显示有关相机或麦克风的“希望访问控制”对话框。

这是一个标准的访问用户(非管理员)。将此用户暂时提升为管理员并没有影响。其他用户没有受到影响。新创建的标准帐户也不受此问题的影响。

在Terminal.app中以受影响的用户身份执行tccutil reset All会显示“失败”错误。

在这种情况下,解决方法是删除用户的Library中的com.apple.TCC文件夹~/Library/Application Support/com.apple.TCC,然后立即注销。

登录时,文件夹和内容将重新构建,正常行为将恢复。


只有这个方法(rm ~/Library/Application Support/com.apple.TCC 并且注销并重新登录)对我有效。 - Thomas Anderson Neo

0
我曾试图通过按键将当前日期插入到提醒事项应用程序中。但是,与其使用推荐的“设置->安全性和隐私->隐私->辅助功能->自动化”不同,我必须将提醒事项添加到而不是自动化,以允许按键命令获得许可。令人烦恼的是它只允许在特定的应用程序上执行该操作,但这似乎是事实。

0
今天我遇到了一个问题,使用了我已经拥有十年的脚本来自动将Illustrator文件光栅化为Photoshop文件,结果被告知没有权限,但没有给出任何原因。上面提供的解决方案都不适用于我的情况,因为它与我的系统事件无关。然后我进行了测试,并发现如果使用osascript,在我的电脑上每个应用程序都会出现同样的问题。如果我在脚本中告诉它打开一个文件,我会得到一个权限错误,但是出于某种荒谬的原因,如果我在脚本中告诉它关闭一个已经打开的文件,我突然会得到一个权限对话框:
osascript -e "tell application \"Adobe Photoshop 2021\" to close current document saving no"

我想在这里发布一下,帮助其他人解决这个令人沮丧的困境。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接