检查打印机是否存在的程序

Program to check if printer exists

本文关键字:程序 存在 是否 打印机 检查      更新时间:2023-10-16

我正在寻找一种方法来检查使用C或c++程序的Linux/Unix机器上是否存在打印机。类似下面的windows程序:

BOOL IsPrinterExist(LPTSTR pPrinterName)
{
    HANDLE hPrinter = NULL;
    if(OpenPrinter(PRINTERNAME,&hPrinter,NULL))
    {
        ClosePrinter(hPrinter);
        hPrinter = NULL;
        return TRUE;
    }
    return FALSE;
}

我想我可以用CUPS API来做,但是我需要一些可以在每台机器上工作的东西,而不需要特殊的安装,使用OS API。我知道我也可以使用issue lpstat -a命令并读取其输出,但我正在寻找一种直接执行的方法(做lpstat -a所做的事情)。

由于CUPS是GNU/Linux系统上事实上的打印标准,我不会太担心"特殊安装":如果没有安装CUPS,机器可能无论如何都无法打印。

要了解如何使用CUPS API,请查看lpstat的源代码

相关文章: