我最近问这个问题有几个相关的问题,但这次我想尽可能直接地考虑到我在开发过程中所担心的问题。在c#中检查打印机状态?
我们正试图通过移动打印机打印门票和需要确定打印机是否联机,脱机或者,如果有一个错误,所以我们可以更好地处理它:
这里又是一个片段我代码时,我打印,但似乎无法如果发生任何问题,得到它的陷阱:
Process process = new Process();
//process.StartInfo.CreateNoWindow = true;
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.StartInfo.FileName = defFile;
if (rwPrinter.Length > 0)
{
process.StartInfo.Verb = "printto";
//process.StartInfo.Verb = (Path.Combine(System.Windows.Forms.Application.StartupPath, "printto.exe"));
process.StartInfo.Arguments = "\"" + rwPrinter + "\"";
}
else
{
process.StartInfo.Verb = "print";
}
try
{
process.Start();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
原谅我的轻率这个,因为我有一个老板是不耐烦了我所希望得到这个工作,并请建议如何让这个错误陷阱,谢谢。
你看过[MSDN上显示的示例](http://msdn.microsoft.com/en-us/library/aa970845.aspx)?这使用System.Printing.PrintServer类来确定给定的打印服务器的状态。 –
也可以查看[PrinterSettings类](http://msdn.microsoft.com/de-de/library/system.drawing.printing.printersettings%28v=vs.110%29.aspx)获取打印机状态信息。 – pasty
在PrinterSettings示例中,我发现它在确定设置之前尝试打印文本文档。有没有办法不这样测试? – jfalberg