1

背景:

我们公司在我们用 VB6 编写的遗留产品中使用 Crystal Reports,我正在为其执行一些维护职责。

它使用没有服务包的版本 8.5.0.217 [RTM]。


问题:

迄今为止在 Windows XP x86 上完美运行。

在 Windows 7 [x86 和 x64] 中,我们会遇到访问冲突,然后是应用程序崩溃,并且没有更多可用的错误信息。


细节:

应用程序因使用活动 x 查看器的任何报告的大型数据集而崩溃。Visual Studio 将在调试时崩溃。

有问题的代码在这里:

Crv_Obj(0).ReportSource = ReportParametersFrm.Report
Crv_Obj(0).EnablePopupMenu = True
Crv_Obj(0).ViewReport

我已经检查过:

  • Crv_Obj(0)是一个有效的对象引用。
  • ReportParametersFrm.Report是一个有效的参考。

我拥有的唯一信息来自事件查看器:

Faulting application name: Pyramid.exe, version: 2.2.0.8, time stamp: 0x51e53053
Faulting module name: craxdrt.dll, version: 8.5.0.217, time stamp: 0x3a849e1a
Exception code: 0xc0000005
Fault offset: 0x002ac3d1
Faulting process id: 0x15a8
Faulting application start time: 0x01ce8228a295c8c8
Faulting application path: C:\Program Files\Pyramid\Pyramid.exe
Faulting module path: C:\Program Files\Pyramid\CrystalSys\craxdrt.dll

我也试过:

  • 禁用 DEP 无效。
  • 将兼容性更改为 Windows XP 及更低版本。
  • 作为特权用户和非特权用户运行。
  • 尝试添加新的错误处理程序来捕获错误
  • [毫无结果] 在谷歌和这个网站上搜索。
  • 联系 SAP [然后被忽略]。

我需要帮助:

  • 你以前见过这个吗?
  • 是否有任何解决方法或我应该寻找的东西显然是错误的?
  • 是否有支持 VB6 的最新版本的 Crystal 或至少您知道我可以尝试的升级路径?

任何和所有的帮助将不胜感激。

4

1 回答 1

0

After quite a lot of research and digging around it seems that a slightly newer version of craxdrt.dll crviewer.dll fixes the problem.

Simply a case of replacing these libraries in the application lib folder and in C:\Windows\System32\

I've put a copy of the libs here in the event anyone else has this problem as there was very little consistent help/information out there on the internet.

于 2013-08-29T08:45:21.660 回答