1

サードパーティのプログラムに dll を挿入し、MSVC でその dll をデバッグしています。プログラムの最近の更新により、dll が挿入されている間にデバッガーをプロセスにアタッチするたびに MSVC がクラッシュするまで、私はしばらくの間正常に動作していました。私のdllはまだ正常に動作していますが、MSVCを接続するとホストプログラムがクラッシュするため、デバッグできません。

イベント ビューには次のように表示されます。

Faulting application name: SomeApp.exe, version: 1.0.1023.0, time stamp: 0x5109728a
Faulting module name: MyDLL.dll, version: 0.0.0.0, time stamp: 0x5114e8b3
Exception code: 0x80000003
Fault offset: 0x006f3b28
Faulting process id: 0x1b80
Faulting application start time: 0x01ce05f71b9d65a9
Faulting application path: C:\SomeApp.exe
Faulting module path: c:\programming\MyDLL\debug\MyDLL.dll
Report Id: 8762e85d-71ea-11e2-a78e-4495fc99073a

デバッガが接続されていることを検出すると、アプリケーションがクラッシュする可能性はありますか? 私の DLL は、EULA/TOS などに違反していない正当なサーバーサイド MOD であることに注意してください。関連する場合、ホスト プログラム内のいくつかのオブジェクトの仮想メソッド テーブル (VMT) ポインターを置き換えることによって動作します。

更新MSVC を使用して dll の OnAttach() 部分をデバッグできますが、実行がホスト プロセスに戻るとクラッシュします。

4

0 に答える 0