我正在尝试从MAC上的C ++(XCode)应用程序调用文档打印。我目前正在使用Launch Services框架,但我没有注意到printto选项(flag)的位置。这是由支持者启动服务?还有其他方法吗?
谢谢, 马尔科
答案 0 :(得分:0)
根据Technical Note TN2082: The Enhanced Print Apple Event(在旧版文档中),您应该能够指定类型为keyAEPropData
的{{1}}参数,其值为kPMPrinterAEType
引用。
但是,TechNote有点不清楚。好像PMPrinter
参数同时包含打印设置和打印机。接收器可以通过将参数的“实际”值强制转换为两种不同类型来检索两条信息。这引发了一个问题,即您是否可以仅使用keyAEPropData
指定参数值并让它工作,或者是否需要其他类型。
无论如何,您可以为参数构建kPMPrinterAEType
并将其传递到AEDesc
结构的LSOpenFromRefSpec()
字段中的passThruParams
。
使用脚本编辑器将增强的打印Apple事件发送到测试应用程序然后转储该事件可能会有所帮助。这可能会清除参数的构造方式,因此您可以用相同的方式构造它。