如何在C#中检查打印机状态

本文关键字:检查 打印机 状态 | 更新日期: 2023-09-27 18:27:30

我对C#打印还很陌生,在打印之前,我正在尝试查找特定打印机的当前状态(如果它离线、缺纸等)。

LocalPrintServer server = new LocalPrintServer();
PrintQueue printQueue = server.GetPrintQueue("EPSON WF-2540 Series");
MessageBox.Show(printQueue.IsOffline.ToString());

代码似乎确实成功地找到了指定的打印机,但始终将其视为联机。打印机是打开、关闭还是拔下都无关紧要(我使用的是直接usb连接)。有人知道是什么原因造成的吗?提前谢谢你,我非常感激!

如何在C#中检查打印机状态

来自PrintQueue.IsOffline成员(备注部分)上的MSDN文档:

如果打印机不支持具有此含义的信号,则该属性始终为false。

显然,这是您的情况,并且此属性从未设置为True。