managed.exe の MyManagedFunc は、unmanaged.dll の MyUnmanagedFunc() を呼び出します。Win32 を使用して unmanaged.dll にミニダンプを生成します。SetUnhandledExceptionFilter. コールスタックで MyUnmanagedFunc を確認できますが、マネージ側では何も役に立ちません。
WinDbg と SOS.dll を使用してマネージド コールを確認できるはずですよね?以下は私のWinDbgセッションです。私は何を間違っていますか?
実行可能な検索パスは次のとおりです。 Windows XP Version 2600 (Service Pack 3) MP (4 procs) 無料の x86 互換 製品: WinNt、スイート: SingleUserTS マシン名: デバッグ セッション時間: Fri Sep 25 12:59:28.000 2009 (GMT-5) システム稼働時間: 利用できません プロセス稼働時間: 0 日 0:00:08.000 ................................................... このダンプ ファイルには、関心のある例外が格納されています。 保存された例外情報は、.ecxr 経由でアクセスできます。 (da0.1340): ゼロによる整数除算 - コード c0000094 (1 回目/2 回目のチャンスはありません) eax=03a50000 ebx=001a2578 ecx=00000007 edx=7c90e514 esi=001a2550 edi=001a25a8 eip=7c90e514 esp=0012dd24 ebp=0012dd34 iopl=0 nv up ei pl zr na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000246 *** エラー: シンボル ファイルが見つかりませんでした。ntdll.dll のシンボルをエクスポートするようにデフォルト設定 - ntdll!KiFastSystemCallRet: 7c90e514 c3 ret *** エラー: シンボル ファイルが見つかりませんでした。kernel32.dll のシンボルをエクスポートするようにデフォルト設定 - 0:000> .loadby sos mscorwks 0:000> !スレッド *** エラー: シンボル ファイルが見つかりませんでした。mscorwks.dll のシンボルをエクスポートするようにデフォルト設定 - mscorwks.dll の PDB シンボルが読み込まれていない ThreadStore のリクエストに失敗しました 0:000> .ecxr eax=0000000c ebx=00160c20 ecx=00000000 edx=00000000 esi=0012efb8 edi=0012eea4 eip=01201712 esp=0012edd8 ebp=0012eea4 iopl=0 nv up ei pl nz na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010206 *** 警告: NativeDLL.dll のチェックサムを確認できません NativeDLL!MyBad+0x22: 01201712 f77d0c idiv eax,dword ptr [ebp+0Ch] ss:0023:0012eeb0=00000000 *** 警告: System.Windows.Forms.ni.dll のチェックサムを確認できません *** エラー: モジュールのロードは完了しましたが、System.Windows.Forms.ni.dll のシンボルをロードできませんでした