【发布时间】:2018-07-09 19:31:07
【问题描述】:
我们的 Web 应用程序使用旧的 Crystal Reports XI Rel 2 activeX 来呈现从经典 ASP 调用的报表。我们现在希望它与新的 Crystal Reports 13 运行时一起运行,以呈现从 ASP.NET 调用的报表。
我们安装了http://scn.sap.com/docs/DOC-7824(支持包3)中的exe。在我们的开发机器(Windows XP)上一切正常,我们能够使用这两种技术设计和呈现报告。我们今天尝试将其部署到客户端的服务器(Windows Server 2008 64 位),但显然没有成功。
如果我们先尝试打开新报告然后打开旧报告,它们都会失败,但会显示完全通用且因此无用的错误消息,例如“创建报告时出错”。新报告是好的,但是旧的失败并显示“无效的 TLV 记录”消息。
相反,如果在重新启动 iis 后,我们首先尝试打开旧报告(来自经典 ASP 的 CR XI R2),它会正确显示,但新报告(CR 13)会出现此错误:
检索具有 CLSID 的组件的 COM 类工厂 {F734A321-8381-4FFD-A614-139E8906DC83} 失败,原因如下 错误:80000003 一个或多个参数无效(异常来自 HRESULT: 0x80000003)。
我们试图用谷歌搜索这个错误;唯一有意义的结果是this thread,但它对我们没有帮助。
谢谢
编辑:好的,第一个错误只是 .rpt 文件被排除在部署的文件夹之外。所以这真的归结为 CR 运行时的不兼容,也许吧?
编辑 2:是的,确实如此。我们将新报告移动到另一个应用程序池下运行的另一个虚拟目录中,现在它们都可以工作,无论首先实例化什么。那么有没有什么办法可以逐步迁移我们现有的记录,即有一段时间,两个运行时间共存并被同一个虚拟目录使用?
【问题讨论】:
-
部署站点时,您将其部署到何处?是 C:\wwwroot\inetpub
-
我们有自己的设置,将其部署在 Program Files 下的文件夹中