我被赋予了将VB6应用程序转换为DotNet的任务 . 这个应用程序基本上使用位于应用程序引用的Crystal Reports ActiveX运行时库中的Report对象(类)加载几个水晶报表v8.5(.rpt)文件 . 该应用程序循环遍历.rpt报告,将它们加载到内存中,更改数据源,并将它们作为PDF文件导出到另一个文件夹中,每周一次 .
现在我们需要将此应用程序转换为C#并使用Crystal Reports 2011(v14.0) . 我设法将定义文件(.rpt)转换为新版本格式 . 但是当我尝试编写C#代码来加载报表,更改数据源并将它们导出为PDF文件时,我知道为了使用ReportDocument类,我仍然需要引用旧的CrystalDecisions.CrystalReports.Engine . DLL .
但是这个DLL没有附带新版本的Crystal Reports(2011) . 我不得不从以前的安装中挖掘出这个文件 . 我想知道ReportDocument类是否在我需要在C#应用程序中引用的另一个较新的DLL文件中 .
1 回答
首先,当您在安装Visual Studio之后在计算机上安装Crystal Reports时,它将识别您已安装VS.NET并安装适当的开发人员DLL . 如果没有发生这种情况,请尝试重新安装 .
其次,您可以安装CR的开发人员版本,但它不如CR 2011独立版本那么完整 . 但它与CR 2011兼容,无需在您的计算机上安装CR 2011即可与VS.NET配合使用 . 这是一个链接:
https://www.sap.com/campaign/ne/free_trial/crystal_reports_visual_studio/index.epx?url_id=reg-us-crvs&kNtBzmUK9zU=1
这是另一个链接,比我更详细地解释了这一点 . 单击适合您项目的网格单元格 . http://scn.sap.com/docs/DOC-25513