如何解决“指定的打印机无效”问题c# winforms中的错误

本文关键字:无效 打印机 问题 错误 winforms 何解决 解决 | 更新日期: 2023-09-27 18:09:25

我相信这是一个经常被问到的问题,但是我找不到任何适合我的答案。请考虑以下情况。


我已经开发了一个 c# Winform应用程序与SAP水晶报告VS2010餐厅。订单完成后,发票需要直接打印到打印机。下面是我使用的代码:

oMainOrder.SetDataSource(oDSOrderReport);
if (_sPrintOrShow.ToLower() == "print")
{
   oMainOrder.PrintOptions.PrinterName = printDialog.PrinterSettings.PrinterName;
   //Above line provides the name of the default printer, which is also my target printer
   oMainOrder.PrintToPrinter(1, false, 0, 0);
}
else
{
   frmShowReport reportViewerForm = new frmShowReport(oDSOrderReport);
   reportViewerForm.ShowDialog();
}

_sPrintOrShow是一个变量,它决定发票是直接发送到打印机还是加载到报表查看器表单中。当_sPrintOrShow设置为print时,很可能会将发票发送到打印机。在我的终端和我的USB打印机上,这工作得很好。但是当我为我的客户提供相同的解决方案时,他得到了异常"指定的无效打印机"。更令人沮丧的是,如果发票是在报表查看器表单中加载的,那么从那里我可以毫无问题地将发票打印到同一台打印机上。我完全不知道,为什么会这样?你们中有人能像以前那样帮我吗?谢谢。

如何解决“指定的打印机无效”问题c# winforms中的错误

就在一些快速搜索之后,我发现了一个相同使用的代码示例,有人发布说它不像预期的那样通过SAP论坛工作,并提供了一行给这个Matt Ruma。值得一试,不确定是否有效,只是想帮忙。