日期:2014-05-17  浏览次数:20833 次

C#如何判断打印机是否有效?
电脑里面设置了几个打印机(有的是局域网的),然后想通过程序让某个打印机打印,现在遇到一个问题假如我要打印机的那台打印机由于某些问题(例如没有接触好等)不能打印了,如果直接调用Print()则程序就会像是死了一样,过了好久才提示打印失败,我想通过程序判断打印机是否可用,PrinterSettings.IsValid 我试了一下,就算打印机我都拔掉了,它仍然显示为true,PrinterSettings的属性里面那个属性能够准确的判断打印机是否有效?

------解决方案--------------------
取打印机状态来进行判断。具体你可以参考一下:http://www.codeproject.com/csharp/qPrintcomponent2.asp,取它里面的属性:Printer.PrinterInfo5即可取出打印机当前的状态。 如果当前状态为read表示打印机状态是准备就绪的。