我们已经确认了带有 Internet Explorer 10 客户端的 Crystal Reports 2008 (SP4) 中的一个错误。它适用于 IE9 客户端,但如果您从 IE9 升级到 IE10,则会发生故障。
具体来说,您可以查看呈现为 HTML 的报表,但是当您关闭报表时,发送到服务器的请求会挂起服务器上的线程。服务器上 IIS 中的代码正在运行
CrystalDecisions.Web.dll!CrystalDecisions.Web.CrystalImageCleaner.Run() + 0x4b bytes 该方法在设计上是一个无限循环。
我在 IIS 中启用Failed Request Tracing
,这里的日志显示 IIS 服务器生成的错误。
错误 (2147943395) - 由于线程退出或应用程序请求,I/O 操作已中止。(0x800703e3)
如果 IIS 服务器是 Windows Server 2008 R2 SP1 和 Windows 7 服务器,则会发生这种情况。IE9 浏览器不会出现此问题,Chrome 或 Firefox 也不会出现此问题。
我怀疑是什么原因导致 Crystal 执行该Run()
方法,而这不应该发生。
我们尝试在文档中以及在浏览器客户端中使用EmulateIE7
和EmulateIE9
同时使用两者(并不是说会有所不同),但浏览器仿真并没有解决问题。