有没有办法使用CUPS API保存打印作业?我必须使用c语言和ubuntu机器编码。一个例子可以真正帮助。
答案 0 :(得分:0)
查看shell命令lprm
和cancel
您可以使用system()
或sh -c
(How do I execute a Shell built-in command with a C function?)
http://linux.die.net/man/1/lprm-cups https://www.cups.org/documentation.php/man-cancel.html
http://linux.die.net/man/3/system
另请参阅此 http://www.g-loaded.eu/2005/11/10/using-a-cups-printer-from-command-line/ (命令可与system()
或sh -c
一起使用)
您也可以使用它,使用shell命令更容易:
cupsCancelJob()
#include <cups/cups.h>
cups_dest_t *dest;
int job_id;
cupsCancelJob(dest->name, job_id);
如果要删除作业(也停止打印),请使用cupsCancelJob2()
ipp_status_t cupsCancelJob2 (
http_t *http,
const char *name,
int job_id,
int purge
);
参数的
http 与服务器的连接或CUPS_HTTP_DEFAULT
名称 打印机或班级名称
job_id 当前作业的作业ID,CUPS_JOBID_CURRENT或所有作业的CUPS_JOBID_ALL
清除 1清除,0清除
参见 https://www.cups.org/documentation.php/doc-2.0/api-cups.html#cupsCancelDestJob