升级到 OEM 2020 CR Runtime 64 位版本后,为什么在新服务器上运行时会出现此 Crystal Reports 错误?

问题描述 投票:0回答:2

尝试通过 ASP.NET Web 窗体应用程序访问 Crystal Report,并在尝试运行报表时出现以下错误。

System.Runtime.InteropServices.COMException:检索 COM 类 具有 CLSID 的组件工厂 {C0C99FA5-E1D3-494E-BE0C-73C19424F91C} 由于以下原因失败 错误:8007007f 找不到指定的过程。 (例外 来自 HRESULT:0x8007007F)。

我确认:

  • SAP Crystal Report 应用程序服务器 OEM 2020 已安装、许可并正在运行 - 我可以连接到端口,服务正在配置管理器工具中运行
  • CR Runtime 64位组件安装在Web服务器上并匹配版本
  • IIS Web 应用程序工作正常,并且是 64 位(在 Web 应用程序的应用程序池中启用 32 位应用程序为 False)- 除 Crystal Reports 集成外,所有页面和内容都可以工作
  • 为 64 位 SQL Server 创建 ODBC 连接(ASP.NET Web 应用程序的其余部分很好地使用此连接 - 获取数据、确认使用正确的 DBMS 和架构等)
  • 按照其网站上 2020 OEM 版本的 SAP PDF 说明安装了此版本的 VS Redist
c# asp.net webforms crystal-reports shibboleth-sp
2个回答
0
投票

我找到了根本原因,或者至少是部分原因..

我在同一台服务器上安装了 Shibboleth SP(版本 3,如果重要的话),它添加了一些组件和 IIS 模块,这似乎会导致与 Crystal Reports OEM 组件发生冲突。

我卸载了 Shibboleth SP,不再出现错误。

我重新安装了 Shibboleth SP,我再次收到 Crystal COM 错误。

Crystal 不喜欢 Shibboleth,这显然是一个已知问题: https://shibboleth.net/pipermail/users/2021-January/048923.html

SysInternals Process Monitor 也有助于确认问题,如果这种情况发生在您身上(并且如果您没有使用 Shibboleth,即:某些其他组件正在造成 Crystal choke。)


-1
投票

如果您在 google 上搜索过该错误,您可能会发现这是因为您的服务器上未安装 Office。有一个很好的理由。 Microsoft 不支持以这种方式使用的 Office 应用程序。你必须找到其他方法来完成你想做的事情。

© www.soinside.com 2019 - 2024. All rights reserved.