尝试从python脚本启动程序作为服务启动

时间:2017-03-09 07:13:16

标签: python service external

以python脚本的形式创建服务,其中应通过命令启动具有特定播放列表的VLC。 服务plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs$
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.bioxakep.biobot.plist</string>
    <key>Program</key>
    <string>/Users/BioMac/Documents/Scripts/newHome.py</string>
    <key>KeepAlive</key>
    <true/>
    <key>StandardOutPath</key>
    <string>/tmp/biobot.out</string>
    <key>StandardErrorPath</key>
    <string>/tmp/biobot.err</string>
</dict>
</plist>

原则上缺少 〜/ Library / LaunchAgents 目录,因此该服务位于 / Library / LaunchAgents 目录。 服务正常启动,但是: 在这个脚本中,我尝试启动程序(带参数 - 播放列表的VLC):

os.system('open -a vlc /Users/BioMac/Desktop/Radio.m3u')

VLC尝试启动并挂起,但在日志视图中出错:

LSOpenURLsWithRole () failed for the application /Aplplications/VLC.app with error -600 for the file /Users/BioMac/Desktop/Radio.m3u.
LSOpenURLsWithRole () failed for the application /Aplplications/VLC.app with error -10810 for the file /Users/BioMac/Desktop/Radio.m3u.

帮助我理解......

1 个答案:

答案 0 :(得分:0)

我认为你应该使用Console.app(用Ctrl + Space显示它)来发现有关挂起的更多信息。

有关代码-10810的更多信息,请访问:http://www.thexlab.com/faqs/error-10810.html

有关代码-600的更多信息,请访问: https://discussions.apple.com/thread/1611175