Objective c 如何使用CUPS查找打印机URI

Objective c 如何使用CUPS查找打印机URI,objective-c,c,operating-system,printers,systems-programming,Objective C,C,Operating System,Printers,Systems Programming,有人知道使用CUPS API获取打印机URI吗 如果没有,是否有人知道我在哪里可以找到可传递给cupsGetOption函数的允许选项列表 现在我只能找到打印机信息、打印机位置、打印机品牌和型号 您可能要查找的是一个“设备uri”。这是远程设备的uri,即lpd/套接字/服务器地址。如果您正在查找本地uri,那么它将是“支持的打印机uri”,这将导致ipp://localhost:631/printers/printername. 下面是如何获取远程uri #import <cups/c

有人知道使用CUPS API获取打印机URI吗

如果没有,是否有人知道我在哪里可以找到可传递给
cupsGetOption函数的允许选项列表


现在我只能找到
打印机信息、打印机位置、打印机品牌和型号

您可能要查找的是一个“设备uri”。这是远程设备的uri,即lpd/套接字/服务器地址。如果您正在查找本地uri,那么它将是“支持的打印机uri”,这将导致ipp://localhost:631/printers/printername. 下面是如何获取远程uri

#import <cups/cups.h>

const char * printer = "name_of_printer";
int num_dests;
cups_dest_t *dest,
            *dests;

const char *value;

num_dests = cupsGetDests(&dests);
dest = cupsGetDest(printer, NULL, num_dests, dests);
if( dest == NULL){
    return 0;
};
value = NULL;

if (dest->instance == NULL)
{
    value = cupsGetOption("device-uri", dest->num_options, dest->options);
}

cupsFreeDests(num_dests, dests);
printf("uri - %s",value);
#导入
const char*printer=“打印机名称”;
int num_dests;
杯子的目的地,
*目的地;
常量字符*值;
num_dests=杯形集合(&dests);
dest=cupsGetDest(打印机,空,num_dests,dests);
如果(dest==NULL){
返回0;
};
值=空;
如果(dest->instance==NULL)
{
value=cupsGetOption(“设备uri”,dest->num\u选项,dest->options);
}
杯底(杯底、杯底);
printf(“uri-%s”,值);