【发布时间】:2013-11-02 01:46:10
【问题描述】:
我最近就这个问题提出了几个相关的问题,但这次我想尽可能直截了当地解决我在开发过程中遇到的问题。
我们正在尝试通过移动打印机打印票证,需要确定打印机是在线、离线还是出现错误,以便我们更好地处理它:
这又是我打印时代码的 sn-p,但如果出现任何问题,似乎无法让它陷入困境:
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);
}
请原谅我在这方面的仓促,因为我有一个不耐烦让我按预期工作的老板,请告诉我如何才能让它进入错误陷阱,谢谢。
【问题讨论】:
-
你看过example shown on MSDN吗?这使用 System.Printing.PrintServer 类来确定给定打印服务器的状态。
-
还可以查看PrinterSettings class 以获取打印机状态信息。
-
在 PrinterSettings 示例中,我注意到它在确定设置之前尝试打印文本文档。有没有办法不这样测试?
标签: c# pdf printing error-handling