在.net中生成PDF格式的水晶报表

本文关键字:格式 水晶 报表 PDF net | 更新日期: 2023-09-27 17:49:20

我把POC控制台应用程序放在一起,从水晶报告生成PDF(使用CrystalDecisions库)

在我的dev. box上运行良好,但在其他地方执行时会遇到异常:

无法加载文件或程序集'CrystalDecisions.ReportAppServer.CommLay, Version=13.0.2000.0,文化=中性,PublicKeyToken=692fbea5521e1304'或在其之一依赖关系。系统找不到指定的文件

Unhandled Exception: System。TypeInitializationException:类型初始化的"CrystalDecisions.CrystalReports.Engine。报告文档抛出了一个例外。--System.IO.FileNotFoundException:无法加载文件或程序集CrystalDecisions.ReportAppServer。CommLayer, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304'或其依赖项之一。系统找不到file指定。在CrystalDecisions.CrystalReports.Engine.ReportDocument . . cctor ()

我认为这是由于没有Crystal Reports运行时(没有显式安装)造成的。

1)谁能确认一下?

2)是否有任何方法可以在没有在目标机器上安装Crystal Reports运行时的情况下工作?

我读过关于用合并模块等构建安装程序的文章,但这是一个控制台应用程序,我不想走那条路。

提前感谢。

编辑:

我检查了DLL依赖项,这实际上似乎缺少库API-MS-WIN-CORE-*

在.net中生成PDF格式的水晶报表

您需要分发Crystal Reports的运行时。

另一个选择是编写第二个应用程序来生成pdf文件,你可以安装在服务器上,然后你的每个控制台应用程序发送一个请求到新的服务器应用程序发送回pdf。这意味着crystal运行时只会安装在一台机器上,而原来的控制台应用程序不需要担心它。

仅供参考,水晶运行时可以从这里下载:http://scn.sap.com/docs/DOC-7824