【问题标题】:Do I need to install something from Crystal Reports on the server?我是否需要在服务器上安装 Crystal Reports 中的某些内容?
【发布时间】:2012-05-01 23:37:28
【问题描述】:

我正在 Visual Studio 2010 中开发一个 Web 应用程序项目。它已发布到 Windows 2008 服务器。

我已添加参考:

CrystalDecisions.CrystalReports.Engine

CrystalDecisions.Shared

CrystalDecisions.Web

并将 CrystalReportViewer 添加到 .aspx 页面。

查看器要显示的水晶报表文件位于应用程序发布到的服务器上。

如果我在本地运行应用程序 - 它可以正常工作,并且报告会显示在查看器中。

如果我将应用程序发布到服务器,它会因缺少“log4net”组装消息而崩溃。

我是否需要在服务器上安装 Crystal Reports 中的某些内容?

【问题讨论】:

    标签: .net crystal-reports


    【解决方案1】:

    是的 - 您需要安装相关的 Crystal Reports 运行时/重新分发;

    http://www.businessobjects.com/jump/xi/crvs2010/us2_default.asp

    应该有你需要的。

    如果您遇到版本问题,请尝试通过将其添加到您的 app/web .config 来修复:

    <runtime> 
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="CrystalDecisions.CrystalReports.Engine" publicKeyToken="692fbea5521e1304" culture="neutral"/>
            <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
          </dependentAssembly>
          <dependentAssembly>
            <assemblyIdentity name="CrystalDecisions.Shared" publicKeyToken="692fbea5521e1304" culture="neutral"/>
            <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
          </dependentAssembly>
          <dependentAssembly>
            <assemblyIdentity name="CrystalDecisions.ReportSource" publicKeyToken="692fbea5521e1304" culture="neutral"/>
            <bindingRedirect oldVersion="xx.x.xxxx.x" newVersion="yy.y.yyyy.y"/>
          </dependentAssembly>
          <dependentAssembly>
            ...
        </assemblyBinding>
      </runtime>
    

    【讨论】:

    • 谢谢。所以我想我需要在服务器上安装适用于 .NET Framework 4(64 位)的 SAP Crystal Reports 运行时引擎。我怎么知道它是否已经在那里?
    • 从内存中会出现在控制面板中,添加/删除程序
    • 我总是对这些东西感到困惑。我添加了对 CrystalDecisions.ReportAppServer.CommLayer.dll 的引用并发布了该站点。当我尝试运行该站点时,我被告知缺少程序集 CrystalDecisions.ReportAppServer.CommLayer.dll 版本 13.0.2000.0。在我的本地计算机上,引用的版本是 13.0.0.99 为什么服务器要查找 13.0.2000.0?是什么告诉它这样做的?您上传了一个引用 dll 版本 13.0.0.99 的站点,而服务器决定查找 13.0.2000.0 如何让我的本地计算机引用可能是更高版本的内容?
    • 我刚刚添加了一些代码,这些代码有时是“修补”版本号所必需的。我不得不承认 Crystal 有点像 PITA!
    【解决方案2】:

    我只需在 IIS 的高级设置中将启用 32 位应用程序勾选为真,就能够解决该错误。点击你选择的应用池>adv settings>会弹出一个对话框。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-20
      • 2010-10-21
      • 2011-03-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多