2

私は大規模な VB6 アプリケーションで作業していますが、プログラムを閉じたときに表示されるいくつかのバグを解決するのに多くの困難があります。

これらのエラーはすべて、最後のコード行の後に表示されるため、デバッグできません。これらのエラーが「AUTOMATION エラー」であることはわかっています。Visual Studio 2010 でプロセスをアタッチしようとしたところ、次のエラーが発生しました:

どの DLL でエラーが発生したかをメモリ ポインタで知るにはどうすればよいですか?

編集: WinDbg に関する詳細情報

(166c.2758): Access violation - code c0000005 (first chance)  
First chance exceptions are reported before any exception handling.  
This exception may be expected and handled.  
eax=01f8b004 ebx=00000800 ecx=01f16ce4 edx=00000000 esi=01f8b004 edi=006d0a68  
eip=729926a6 esp=0018f648 ebp=75850dfb iopl=0         nv up ei pl zr na pe nc  
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010246  
MSVBVM60!IID_IVbaHost+0x24066:  
729926a6 ff7174          push    dword ptr [ecx+74h]  ds:002b:01f16d58=????????  
4

1 に答える 1

1

この部分が私の注意を引きました:

"Floating-point inexact result."

これを試して:

[プロジェクト] > [プロジェクト プロパティ] > [コンパイル] > [高度な最適化] に移動します。

[浮動小数点エラー チェックを削除する] および [丸められていない浮動小数点演算を許可する] ボックスがチェックされていないことを確認します。それらがチェックされている場合は、チェックを外し、プロジェクトを保存して再実行します。これにより、プログラミング環境がクラッシュする前に、Visual Basic で浮動小数点データ型とそれに関連する式の問題をチェックできます。次に、検出されたエラー (ゼロ除算など) を単純にスキップするのではなく修正し、すべてが修正されたことに満足したら、オプションで最適化設定を元に戻すことができます。

于 2013-11-07T13:06:11.767 に答える