1

バックグラウンド:

当社では、VB6 で記述されたレガシー製品で Crystal Reports を使用しており、その保守作業を行っています。

サービス パックなしのバージョン 8.5.0.217 [RTM] を使用しています。


問題:

現在まで、Windows XP x86 で完全に動作しています。

Windows 7 [x86 および x64] では、アクセス違反に続いてアプリケーションがクラッシュし、使用可能なエラー情報はありません。


詳細:

Active 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 以下に変更します。
  • 特権ユーザーと非特権ユーザーの両方として実行します。
  • エラーをキャッチするために新しいエラーハンドラーを追加しようとしました
  • [無駄に] Google とこのサイトで検索します。
  • SAP に問い合わせています [その後無視されます]。

助けが必要なこと:

  • これを見たことがありますか?
  • 明らかに間違っている回避策や探しているものはありますか?
  • VB6 をサポートする Crystal の最新バージョン、または少なくとも私が試みることができるアップグレード パスはありますか?

ありとあらゆる助けをいただければ幸いです。

4

1 に答える 1

0

かなり多くの調査と掘り下げを行った結果、craxdrt.dll crviewer.dll の少し新しいバージョンで問題が解決したようです。

アプリケーションの lib フォルダーと C:\Windows\System32\ にあるこれらのライブラリを置き換える単純なケース

インターネット上には一貫したヘルプ/情報がほとんどなかったため、他の誰かがこの問題を抱えている場合に備えて、ここにライブラリのコピーを置きました。

于 2013-08-29T08:45:21.660 に答える