System.Printing检测打印机状态
C# .net framwork 3.0+版本中有 System.Printing可以检测打印机状态,但是我检测的时候返回的状态都是None
求哪位大侠用过System.Printing。使用时需添加System.Printing引用
我的代码如下:
LocalPrintServer myPS = new LocalPrintServer();
PrintQueueCollection myPrintQueues = myPS.GetPrintQueues();
foreach (PrintQueue pq in myPrintQueues)
{
pq.Refresh();
statusReport = "打印机:" + pq.Name + "状态:" + pq.QueueStatus;
PrintServer ps = pq.HostingPrintServer;
Console.WriteLine(statusReport);
Console.WriteLine(pq.ShareName);
Console.WriteLine(pq.QueueDriver.Name);
Console.WriteLine(pq.QueuePort.Name);
foreach (var myPrintQueue in pq.GetPrintJobInfoCollection())
{
PrintJobStatus status = myPrintQueue.JobStatus;
Console.WriteLine(status);
}
}