SG1*_*SG1 13 cocoa sandbox nsworkspace
我在打电话
[[NSWorkspace sharedWorkspace] launchApplication:path];
Run Code Online (Sandbox Code Playgroud)
从我的沙盒应用程序,我在控制台中收到此错误:
9/5/11 12:23:12.462 PM lsboxd:拒绝为21383产生<PATH删除> - 原因-10826
9/5/11 12:23:12.463 PM App:spawn_via_launchd()失败,错误= 54 label = [0x0-0x1994993] .MYApp path = <PATH REDACTED> flags = 0
9/5/11 12:23:12.464 PM应用程序:LSOpenFromURLSpec()为应用程序<PATH REDACTED>(null)返回-10810.
换句话说,我显然被"启动服务沙箱守护进程"(lsboxd)阻止,它不认为应用程序1应该启动应用程序2.
对于记录10826是"用户没有启动应用程序的权限"然后10810是"发生未知错误"
有没有人知道这个案子的权利?
如何从沙盒应用程序启动其他应用程序(请不要说AppleScript - 这是一个无法运作的噩梦,尤其是从沙盒应用程序或XPC服务调用时).理想的方法是在沙箱中使用(严重残缺的)NSWorkspace.
的参数launchApplication:是应用程序的名称(即类似 的名称@"Safari"),而不是其路径。这样,它就可以在我没有任何特殊权利的情况下工作。我不认为您可以在不使用 PowerBox 的情况下从沙盒应用程序在任意路径启动应用程序。
| 归档时间: |
|
| 查看次数: |
3594 次 |
| 最近记录: |