libcups:检查选项是否可用

时间:2018-02-23 11:10:45

标签: c++ c cups

如果打印机有特定选项,我想检查CUPS库。

我曾经做过以下事情:

ppd_file_t *ppdFile = ppdOpenFile(cupsGetPPD(dest->name));
bool can_duplex = ppdFindOption(ppdFile, "Duplex");
ppdClose(ppdFile);

到目前为止这确实有效。但是:PPD API被标记为已弃用。据我了解文档,以下应该是“正确”的方式:

cups_dinfo_t *info = cupsCopyDestInfo(CUPS_HTTP_DEFAULT, dest);
bool can_duplex = cupsCheckDestSupported(CUPS_HTTP_DEFAULT,
                                         dest, info, "Duplex", NULL);
cupsFreeDestInfo(info);

但这不起作用,结果总是0,尽管打印机确实支持双面打印。

我错过了什么?谢谢你的回答!

0 个答案:

没有答案