• 部署包含水晶报表的项目


    安装部署时,把水晶报表的msm打进去,注册到服务器,要部署使用 Crystal Reports for Visual Studio .NET 2003 的程序;

    首先:找到以下7个文件:
    Crystal_Database_Access2003.msm
    Crystal_Database_Access2003_chs.msm
    Crystal_Managed2003.msm
    Crystal_Managed2003_chs.msm
    Crystal_regwiz2003.msm
    VC_User_CRT71_RTL_X86_---.msm
    VC_User_STL71_RTL_X86_---.msm
     
    (你可以 'C:\Program Files\Common Files\Merge Modules' 文件夹下找到)

    接着:在解决方案资源管理器中,右击安装项目,指向“添加”,然后单击“合并模块”。
    在“添加模块”对话框中,选择上面的7个要添加到安装项目的合并模块,然后单击“打开”:

    还有:打开解决方案-->右键点击 Crystal_regwiz2003.msm 的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)
     

    '*************************************************

    部署水晶报表时的常见问题及解决方案(搜集:海波.NET,2003-10-18)

    1、载入报表时报错

    问题出在报表发布上。

    发布使用水晶报表的项目需要包含三种组件:报表(*.rpt)、模块(*.msm)、运行库(*.msm),这些模块文件是在 C:\Program Files\Common Files\Merge Modules\ 目录里面。

    (1)报表(*.rpt)

    用户编程时创建的水晶报表文件。

    (2)模块(*.msm)

    Managed.msm 该模块包含了CR for VS .NET 的管理模块,如 CrystalDecisions、CrystalReports.Engine.DLL、CrystalDecisions.Web.DLL, 和 CrystalDecisions.Windows.Forms.DLL……

    Managed_chs.msm 是该模块的中文版语言支持。

    Database_Access.msm 该模块包含了数据库的驱动、与不同数据库的联结、报表导出为 RTF 和 HTML 格式的文档和图表组件。

    Database_Access_chs.msm 是此模块的中文版语言支持。

    Regwiz.msm 注册信息模块,非常重要,必需在这个模块输入水晶报表的注册序列号,如果不填,编译的时候就无法通过

    (3)运行库(*.msm)

    如果报表文件使用了 ADO.NET 的 dataset 数据集对象,那么 VC_CRT.msm 和 VC_STL.msm 模块也必须包含在安装工程中。而且这两个模块的文件安装属性的\Module Retargetable Folder\项必须修改成为系统目录

    在VS.NET安装工程中,系统检测出来的依赖项只有 dotNETFXRedist_x86_chs.msm 和 Managed.msm这两个模块,其他的模块我们需要手动加入。

    (1)在解决方案资源管理器里,右键单击安装项目选择\添加\-〉\合并模块(M)\

    (2)在\添加模块\对话窗体,选择 Managed_chs.msm 、Database_Access, Database_Access_chs, regwiz、VC_CRT.msm 和 VC_STL.msm 模块

    (3)重新生成安装项目,没问题,只是生成的安装程序一下子大了七、八兆。

    -------------------------

    2、部署到 Windows 98 / ME 时,出错:\Load Report Failed\

    是因为查询引擎 DLL(CRQE.dll)在客户计算机上没有正确注册。

    要解决这个问题,可以在客户计算机上手动注册 CRQE.dll,使用下面的命令:

    regsvr32 \C:\program files\common files\Crystal Decisions\1.0\bin\CRQE.dll\

    如果 CRQE.dll 没有成功注册,并且问题继续存在,在客户计算机上检查 ATL.dll 的版本。ATL.dll for Windows 98/ME 正确的版本是 3.0.8449。

    通过使用下面三种方法中的任意一种方法,可以找到并注册正确版本的 ATL.dll。

    (1)在客户计算机上装 IE6.0。

    (2)在客户计算机上,手动复制和注册 ATL.dll,然后运行用于 Crystal Reports 分发的安装包。

    (2)将 ATL.msm 合并模块添加到安装工程,ATL.msm 是 Visual Studio installer 1.1 的一部分,可以去微软的网站http://msdn.microsoft.com/vstudio/downloads/tools/vsi11/download.aspx下载, 添加办法同上。

    -------------------------

    3、在Win98的客户端运行提示\该字段名未知\

    报表在Win2000的客户端一切正常,在Win98的客户端运行提示\该字段名未知\?

    是因为报表使用到的 sql server 数据库中的字段名为中文的缘故,将其字段名改名为英文字段名。

    -------------------------

    4、分发到客户机时“查询引擎出错”

    (1)“安装项目”要包含下列合并模块:

    VC_CRT.msm

    VC_STL.msm

    (2)此外,确保 Msvcr70.dll 和 Msvcp70.dll 在客户计算机的“系统目录”里。

    -------------------------

    5、load crpe32.dll failed

    下面是cr9net_deployment.pdf说明中的部署Crystal Report 9的步骤:

    打开 Windows 应用程序。

    在解决方案资源管理器中,右击 Windows 应用程序解决方案,指向“添加”,然后单击“新建项目”。

    在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。单击“确定”按钮。

    在解决方案资源管理中,右击安装项目,指向“添加”,然后单击“项目输出”。

    在“添加项目输出组”中,选择“主输出”,然后单击“确定”。

    将自动添加所有依赖项,如 dotnetfxredist_x86_enu.msm和dotnetcrystalreports.msm。

    需要将dotnetcrystalreports.msm排除在项目之外,在解决方案资源管理器中右击这个模块的右键,选择“排除”。

    在解决方案资源管理器中,右击安装项目,指向“添加”,然后单击“合并模块”。

    在“添加模块”对话框中,选择下列要添加到安装项目的合并模块,然后单击“打开”:

    reportengine.msm, crnetruntime.msm, license.msm

    mapping.msm (可选,当在报表中使用了geographic maps时)

    VC_CRT.msm、VC_STL.msm( 如果您部署的 Windows 应用程序使用 ADO.NET 数据集,则还需要包括 VC_CRT 和 VC_STL 合并模块)

    在解决方案资源管理器中,右击 license.msm 文件,然后选择“属性”。

    在“属性”窗口中,展开 MergeModuleProperties,然后在“许可证密钥”属性框中输入一个有效的许可证密钥。

    注意   每当部署 Crystal Reports 应用程序时,必须提供许可证密钥。

    从“生成”菜单中,选择“生成解决方案”以生成应用程序。

    -------------------------

    6、在 ASP.NET 程序中加载报表时,出错:\Load Report Failed\

    确保 ASPNET 本地用户对报表所在的文件夹有“完全控制”的权限。

    -------------------------

    7、部署 .NET 9.1 程序到 Windows 98 时,出错:\Load Report Failed\

    是因为查询引擎 DLL(CRQE.dll)在客户计算机上没有正确注册。

    要解决这个问题,从开发计算机复制 Dbghelp.dll 到客户计算机的\C:Windows\system32\ 文件夹。

  • 相关阅读:
    python自动化测试-D9-学习笔记之二(线程锁)
    python习题:封装好的测试报告(report.py)
    python自动化测试-D9-学习笔记之二(守护线程)
    python自动化测试-D9-学习笔记之二(多线程)
    python自动化测试-D9-学习笔记之一(线程池)
    python自动化测试-D9-学习笔记之一(unittest模块)
    python习题:写一个备份数据库的脚本
    python习题:【多线程】有100个数据,启动5个线程,每个线程分20个数据,怎么把这20个数据分别传给每个线程。
    自然语言处理NLTK之入门
    python画一颗拳头大的💗
  • 原文地址:https://www.cnblogs.com/tuyile006/p/476476.html
Copyright © 2020-2023  润新知