在我的cocoa应用程序中,我必须在当前系统中安装第三方打印驱动程序作为应用程序的一部分。为此,我创建了installprinter.sh
文件和编码系统命令,用于在installprinter.sh
内创建文件夹,复制文件和安装打印机。我从STPrivilegedTask调用了此installprinter.sh
。如果我在没有启用沙箱模式的情况下运行此应用程序,它会询问管理员权限并成功安装我的所有打印机(工作正常)。
之后我启用了沙盒模式,允许打印,读取/写入用户选择的文件,并以编程方式授予/Library/Printers using nsopenpanel
访问权限。
进行测试,
我在mkdir /Library/Printers/MyPrint/
installprinter.sh
如果我运行它,它不会在MyPrint
内创建/Library/Printers/
文件夹。任何人都可以建议我错过了什么?或沙盒模式不支持在任何条件下在/ Library文件夹中进行更改?