0

我在使用 Crystal Reports 8 时遇到问题。从我的应用程序导出报表时,Crystal Reports有时会冻结。进度窗口只是停留,表示已导出 X 条记录中的 X 条。

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

有没有办法阻止这种情况,或者至少有办法预测冻结?

4

2 回答 2

2

经过长时间的搜索,我们终于找到了WaitForSingleObject(?, INFINITE)电话的来源。CR8 似乎有一些同步错误,这些错误在快速工作站上变得很明显。

它在某种程度上与进度窗口有关,Vista 中的动画似乎缓解了这个问题。

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

于 2009-08-24T08:15:18.473 回答
1

CR 8 是一个相当老的产品,您可能想检查现在拥有它的人(Business Objects 还是?)是否有更新(专门针对 v8 的修补程序)。这可能是他们过去通过服务版本修复的问题。

于 2008-10-21T09:51:06.007 回答