13

我打电话

[[NSWorkspace sharedWorkspace] launchApplication:path];

从我的沙盒应用程序中,我在控制台中收到此错误:

2011 年 9 月 5 日下午 12:23:12.462 lsboxd:拒绝为 21383 生成 <路径已编辑> - 原因 -10826

2011 年 9 月 5 日下午 12:23:12.463 应用程序:spawn_via_launchd() 失败,errno=54 标签=[0x0-0x1994993].MYApp 路径=<路径已编辑>标志=0

2011 年 9 月 5 日下午 12:23:12.464 应用程序:LSOpenFromURLSpec() 为应用程序 < PATH REDACTED > (null) 返回 -10810。

换句话说,我显然被“启动服务沙盒守护程序”(lsboxd)阻止了,它认为应用程序 1 不应该启动应用程序 2。

记录 10826 是“用户无权启动应用程序”,然后 10810 是“发生未知错误”

有谁知道这个案子的权利?

您如何从沙盒应用程序启动其他应用程序(请不要说 AppleScript - 这是一个无法运行的噩梦,尤其是从沙盒应用程序或 XPC 服务调用时)。理想的方法是在沙箱中使用(严重瘫痪的)NSWorkspace。

4

1 回答 1

3

的参数launchApplication:是应用程序的名称(即类似的名称@"Safari"),而不是其路径。这样,它就一直在工作,对我来说没有任何特殊权利。我不认为您可以在不使用 PowerBox 的情况下从沙盒应用程序以任意路径启动应用程序。

于 2011-09-05T17:47:07.990 回答