为什么Crystal Reports 8会冻结?

时间:2008-10-21 09:29:32

标签: crystal-reports

我遇到Crystal Reports 8的问题。从我的应用程序导出报表时,Crystal Reports 有时会冻结。进度窗口保持不变,说X的X记录已导出。

  1. 数据较少的较小报告更容易被冻结。
  2. 更快的工作站(P4,Core2)往往会更频繁地冻结,有时每秒都会尝试。在较旧的工作站(< P2)上,根本不会发生冻结,或者至少每隔一天或两天发生一次冻结。
  3. 导出格式(rtf,pdf,html,rpt)不会影响冻结行为。
  4. 同一报告可以使用完全相同的数据多次成功导出,但最终会冻结。
  5. Windows Vista(!)
  6. 上没有冻结

    有没有办法阻止这种情况或至少是一种预测冻结的方法?

2 个答案:

答案 0 :(得分:2)

经过长时间的搜索,我们最终将来源追踪到WaitForSingleObject(?, INFINITE)来电。看起来CR8有一些同步错误,这在快速工作站上变得很明显。

它与进度窗口有某种关联,Vista中的动画似乎可以缓解这个问题。

理论上,解决方案是修补有问题的文件并用超时参数替换WaitForSingleObject

答案 1 :(得分:1)

CR 8是一个相当老的产品,您可能想要检查现在拥有它的任何人(Business Objects仍然?)进行更新(具体为v8的修补程序)。这可能是他们过去通过服务版本修复的内容。