【发布时间】:2016-11-21 22:49:43
【问题描述】:
我的 Web 服务使用 C# 从服务器打印机打印发票。在调试模式下调用此服务时工作正常,但在将其发送到 IIS 位置并从 web 资源管理器运行项目后,我收到此错误:
没有安装打印机。
System.Drawing.Printing.PrinterSettings.GetHdevmodeInternal(字符串打印机)在 System.Drawing.Printing.PrinterSettings.GetHdevmodeInternal() 在 System.Drawing.Printing.PrinterSettings.GetHdevmode(页面设置 页面设置)在 CrystalDecisions.CrystalReports.Engine.PrintOptions.CopyTo(打印机设置 打印机,PageSettings 页面)
有什么问题?同一台机器在调试模式下可以正常运行,但在实时模式下不可用。
这部分代码抛出异常:
reportClass.PrintOptions.PrinterName = clsDeclaration.defultPrinter1;
reportClass.PrintToPrinter(numberOfCopies, true, 1, 1);
【问题讨论】:
-
首先在系统运行的服务器上安装设备打印机驱动程序..
-
是的,我已经在服务器 PC 上安装了打印机驱动程序,就像我刚才告诉你的,它在调试模式下工作,所以驱动程序工作正常。
-
检查服务器 .net 框架是否适合您的项目框架,如果安装了 32 位或 64 位,还要检查水晶报表运行时。还要检查打印机是否连接到您的服务器 PC 或检查打印机网络。
-
谢谢先生,我明白了,应用程序池中的问题
标签: c# asp.net web-services visual-studio-2010 crystal-reports