6

我的应用程序需要打印 Crystal Reports 报表。它不显示预览,只接受两个参数并显示一个打印对话框来设置打印机。它在安装了 Crystal Reports 的计算机上运行良好,但我没有办法强制客户端已经安装它。

我在各个地方读到过,添加 ClickOnce 先决条件“SAP Crystal Reports Runtime Engine for .NET Framework”将允许在客户端上注册所需的 Crystal Reports 库。在客户端安装应用程序时,它确实下载了运行时,并安装了运行时,但应用程序安装失败,说明各种CrystalDecisions和CrystalReports程序集必须在GAC中注册。

第一个是 CrystalDecisions.ReportAppServer.CommonObjectModel。如果我在项目中添加对此的引用并重新部署,那么它只会给出关于另一个程序集的另一条消息。我确实这样做了 15 次,但从未无缝安装。

我错过了什么?我遵循了 SAP 网站上的指南(压缩包,2.2 MB,包含Microsoft 编译的 HTML 帮助文件crnet_dg_2010_en.chm)。

4

3 回答 3

9

我遇到了这个问题:对于 Click-Once 应用程序,无论客户端计算机的体系结构如何,您都必须在客户端上下载并安装 32 位版本的 Crystal Reports Runtime 。我最终使用 SAP 网站上提供的 MSI 安装了 32 位和 64 位,以覆盖所有基础并使 GAC 错误消失。之后,一切顺利。

从此处下载并安装 MSI(不是可执行文件)

单击一次部署

除了使 SAP Crystal Reports Runtime 成为先决条件之外,您还需要修改开发机器上的 product.xml 文件。该文件位于:{Program Files}\Microsoft SDKs\Windows\v*.0A\Bootstrapper\Packages\Crystal Reports for .NET Framework 4.0\

找到以下行并将其注释掉: <BypassIf Property="ProcessorArchitecture" Compare="ValueNotEqualTo" Value="Intel"/>

现在,重新发布您的解决方案,安装程序应该在 64 位计算机上安装两个运行时。

于 2013-05-10T14:12:16.463 回答
1

如果上述解决方案不起作用试试这个,

  • 进入您的项目属性。
  • 转到发布选项卡。
  • 单击应用程序文件按钮。
  • 将发布状态从先决条件(自动)更改为排除名称中包含 CrystalDecisions 或 BusinessObjects 的任何文件。
  • 点击确定
  • 重建您的应用程序,然后将其重新发布到您的站点或文件共享以供您的客户安装。
于 2015-06-23T08:13:31.563 回答
-1

我在这个位置找到了它:

C:\Program Files (x86)\SAP BusinessObjects\BootStrapper\Packages\Crystal Reports for .NET Framework 4.0

C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages

于 2017-08-31T22:00:54.643 回答