VB6 Crystal Reports 8.5.0.217 - 访问冲突应用程序崩溃

时间:2013-08-07 15:27:19

标签: windows-7 vb6 crystal-reports crystal-reports-8.5

背景

我们公司在我们使用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 [然后被忽略]。

我需要帮助:

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

非常感谢任何和所有帮助。

1 个答案:

答案 0 :(得分:0)

经过大量研究和挖掘后,似乎更新版本的craxdrt.dll crviewer.dll解决了这个问题。

只需在应用程序li​​b文件夹和C:\ Windows \ System32 \

中替换这些库

如果其他任何人遇到此问题,我已经放了一份lib here的副本,因为互联网上的帮助/信息很少。