您的位置:首页 > 其它

[转]VS .NET 2005中水晶报表的打包部署

2008-02-20 14:03 477 查看
本文转自:如下地址(太长了,放在里面了). 原作者:轻舞飞扬

程序打包的时候,要把水晶报表的注册码也给打进去,还有一些必须的合并模块需要添加。

具体操作步骤:

 

(1)新建“安装和部署项目”-->“安装项目”

  

(2)选择项目类型(这里选“创建用于windows应用程序的安装程序”)-->下一步

(3)选择要包含的文件:

一是要部署的应用程序(包括项目主输出阿,内容文件阿,内嵌文件阿等等),

二是需要添加的合并模块(在该部署项目节点上点右键-->添加),主要是包括以下几个文件:

   Crystal_Database_Access2003.msm

   Crystal_Database_Access2003_enu.msm

   Crystal_Managed2003.msm

   Crystal_regwiz2003.msm

   VC_User_CRT71_RTL_X86_---.msm

   VC_User_STL71_RTL_X86_---.msm

   你可以在'C:/Program Files/Common Files/Merge Modules'文件夹下找到替换的合并模块。

  

  这些模块的具体功能如下:

  managed.msm、managed_chs.msm、(托管组件 MSM 处理所有托管组件的分发,其中包括Windows 窗体查看器、Web 窗体查看器和所有 Crystal Decisions 命名空间)

  database_access.msm、database_access_chs.msm、(对于使报表运行所需的所有其他文件,由数据库访问 MSM 处理其分发。其中包括数据库、导出和图表驱动程序。)

  regwiz.msm、(KeyCode MSM 处理 Crystal Decisions 密钥号码的安装)

  VC_CRT.msm、VC_STL.msm(这是vc的运行库,估计是Crystal Report或涉及到的某些程序是用vc写的,所以需要它--此处为某一网友观点)

  

(4)打开解决方案-->右键点击Crystal_regwiz2003.msm 的属性,在“MergeMouduleProperties”里的“License Key”填入:XXXXXX

(这个是你生成Crystal Report是用到的注册号的密码,不填不能编译)

  

(5)生成解决方案

--over--

  

刚开始使用水晶报表的朋友们基本上都是按照这个步骤来操作的。

但是,在程序执行的时候会出现一个异常:

 ************** 异常文本 **************

  System.TypeInitializationException: “CrystalDecisions.CrystalReports.Engine.ReportDocument”的类型初始值设定项引发异常。 ---> System.Runtime.InteropServices.COMException (0x80040154):

带有 CLSID {CF76A644-314B-404D-8D45-F08B51FF990B} 的 COM 对象无效或未注册。

解决这一问题的方法是,

首先到这里http://support.businessobjects.com/downloads/merge_modules.asp#07下载

Merge Modules for Crystal Reports for Visual Studio .NET 2005 ,

然后把这个CrystalReportsRedist2005_x86.msm这个合并模块添加到部署项目中,编译,大功告成!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: