19

私は、C#とDelphi2006の両方のコードを使用する製品のエスカレーションエンジニアです。

ほとんどの場合、C#の問題はWinDbgでデバッグされ、Delphi2006の問題はEurekaLogでデバッグされます。

しかし、問題がDelphiのメモリ使用量である場合、EurekaLogは問題を修正するのに十分な情報を提供しません。デバッグのために私が持っているのは、フルメモリダンプファイルだけです。

.mapシンボルファイルはファイルでありファイルではないため、WinDbgにロードできません(または方法がわかりません).pdb

だから私の質問は:

  • WinDbgの.mapファイルからシンボルをロードするにはどうすればよいですか?(またはその他に変換.map.pdbます。)

  • Delphiアプリケーションのダンプファイルを分析するツールはありますか?

4

3 に答える 3

17

マップからDbgシンボルに変換するには:
-http://code.google.com/p/map2dbg/からMap2Dbg.exeを取得します
-Map2dbgをYourApp.exeおよびそのマップファイルと同じフォルダーに配置します
-実行:map2dbg.exe YourApp 。EXE

Microsoftツールで使用するYourApp.dbgファイルを取得する必要があります…。

于 2009-08-06T18:04:14.613 に答える
3

tds2pdb(map2dbgに関する私のコメントを参照)に加えて、Delphiプログラムで私のミニダンプビューアを使用することもできます: https ://github.com/andremussche/asmprofiler/blob/master/Source/MiniDumpReader/ViewMinidump.exe 。

次に、.dbgまたは.pdbに変換する必要はありませんが、さまざまなDelphiデバッグファイル(.map、.tds / .td32、およびj.dbg)を直接読み取ります。

于 2012-06-13T11:15:50.183 に答える
1

最新バージョンのcv2pdbツールは、map2dbgで作成されたDBGをPDBファイルに変換できます。

したがって、以前に次のようにDBGを作成したことがある場合:map2dbg App.exe

後で次のコマンドを追加するだけです:cv2pdb-s。App.exe

-s。メソッド名とクラス名をポイントで区切るには、パラメータが必要です。

現在のソースでWin32用に構築されたcv2pdbは、ここからダウンロードできます。

于 2018-04-01T04:14:43.807 に答える