提问人:Hadi Bassam 提问时间:10/12/2023 更新时间:10/12/2023 访问量:23
如何从打印机接收数据(HP LaserJet Pro M305d);例如,在Windows窗体中加载纸张 应用程序.Net 4.5 C#
How to receive data from the printer(HP LaserJet Pro M305d); for example Load Paper, In windows form Application .Net 4.5 C#
问:
正如我所说,我正在使用 .Net 4.5 C# 开发 Windows 表单应用程序,现在我想接收有关打印机状态的信息,我使用了我发现的一种方式,这是它:
private bool IsPrinterPaperAvailable()
{
// Get the default printer
PrintDocument printDocument = new PrintDocument();
string defaultPrinterName = printDocument.PrinterSettings.PrinterName;
// Create a PrintServer object to manage the printer queue
using (PrintServer printServer = new PrintServer())
{
// Get the printer queue for the default printer
PrintQueue printQueue = new PrintQueue(new PrintServer(), defaultPrinterName);
printQueue.Refresh();
// Check if the printer queue has paper
if (printQueue.IsOutOfPaper)
{
return false;
}
}
return true;
}
此表达式:printQueue.IsOutOfPaper 始终返回 false 和 printQueue 提供的所有其他选项,我认为问题不在于我的代码,我认为问题是我没有发送或让打印机发送打印机状态,是否有我必须安装的特定驱动器。PS:即使当我从Windows打开打印机时,它也会给我这个状态:队列中的0文档,我希望你们能帮助我,我正在尝试解决这个问题大约一个星期。
答: 暂无答案
评论