我正在尝试从我的 launchd 守护程序执行 Apple 脚本。我的脚本只有一行,如下所示。
say "Message From Daemon!"
这总是失败并抛出此错误消息“文件未找到某些对象”。
知道为什么会这样吗?如果我从 xcode(不是通过 launchd 启动它)和在用户上下文中运行的任何其他应用程序运行相同的脚本,则相同的脚本可以正常工作。
我正在尝试从我的 launchd 守护程序执行 Apple 脚本。我的脚本只有一行,如下所示。
say "Message From Daemon!"
这总是失败并抛出此错误消息“文件未找到某些对象”。
知道为什么会这样吗?如果我从 xcode(不是通过 launchd 启动它)和在用户上下文中运行的任何其他应用程序运行相同的脚本,则相同的脚本可以正常工作。
不允许使用NSSound
依赖和守护进程播放声音连接到窗口服务器。window server
我假设say
命令有同样的问题。(此工具使用语音合成管理器将输入文本转换为可听语音,并通过系统偏好设置中选择的声音输出设备播放或将其保存到 AIFF 文件。)
我猜你在尝试同样的事情时遇到了同样的问题。.plist 文件中的路径需要更深入地指向 applescript 应用程序。以下是 .plist 文件的示例。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.namespace.script_name</string>
<key>Program</key>
<string>/Applications/script_name.app/Contents/MacOS/applet</string>
<key>LowPriorityIO</key>
<true/>
<key>Nice</key>
<integer>1</integer>
<key>StartInterval</key>
<integer>7200</integer>
</dict>
</plist>