我正在使用Crystal Report进行报告。我想直接打印而不是显示水晶报表查看器。我用了
rpt.PrintToPrinter(1, false, 0, 0);
在本地工作正常,但当我将它托管到iis服务器时,它无法正常工作。我认为它试图在服务器端而不是客户端找到默认打印机。我可能错了。任何人都可以指导我吗?
提前致谢。
答案 0 :(得分:0)
“PrinttoPrinter”是服务器的打印默认打印机,而不是客户端打印机。因为您的代码(“PrintToPrinter”)在发布代码的服务器上执行。因此,在执行代码时,它会在本地计算机(即服务器)中搜索,并命令在服务器的默认打印机上打印(如果已设置)。
因此,如果您希望在客户端打印文件,您可以简单地从代码创建一个pdf并显示给客户端下载或打印。此外,水晶报告将通过您将在客户端发送的代码生成pdf。
http://forums.asp.net/t/1840284.aspx?print+direct+not+work
http://forums.asp.net/t/1842337.aspx?need+to+print+crystal+report+to+printer+client