0

一部のPCで実行されている.NET2.0アプリケーション(グローバリゼーション:Eng /ドイツ語)があります。

過去数日間、アプリケーションは未処理の例外をスローし、アプリケーションはクラッシュします。デバッグするソースコードがありません。アプリケーションログとイベントビューアは役に立ちません。例外は多くを語っていません。

ソースコードなしでデバッグして例外の原因を見つける方法はありますか?

前もって感謝します

Karthik

4

5 に答える 5

1

http://www.reflector.net/のような .NET 逆コンパイラを使用するか、 http: //digitalbodyguard.com/ から素晴らしいグレイウルフを使用してソースを取得してみてください(グレイウルフはライセンスによって非営利目的での使用に制限されているため、あなたのためのオプションになります)

于 2012-06-22T07:28:44.253 に答える
1

http://wiki.sharpdevelop.net/ILSpy.ashxを使用してコードを逆コンパイルし、コードを取得できます。しかし実際には、アプリケーションに適切なエラー ログが必要です。有効な場所での内部例外の詳細も記載されているため、何が失敗しているのかをよりよく理解できます。

于 2012-06-22T07:25:44.497 に答える
0

Mdbgまたは Windbg を使用してプロセスをデバッグできます。詳細情報を取得するには、PDB ファイルを使用する必要があります。それは有用があるような状況です。

他の回答に示されているように、ソースコードを見つけることができます。ILSpy と Reflector は、デバッグと逆コンパイルを同時に実行できることに注意してください ...

于 2012-06-22T07:32:47.337 に答える
0

メモリダンプから始めます。ProcessExplorerは、プロセスのメモリ ダンプを取得できます。

于 2012-06-22T07:25:37.753 に答える
0

WinDbg を使用して、クラッシュ ダンプを処理したり、プロセスがクラッシュしたときにプロセスにアタッチしたりできます。マネージ コードには、効果的にデバッグできる十分な型情報があります。

  • WinDbg.exe -Iシステムにクラッシュ ハンドラとして登録します。

WinDbg がアタッチされると、次のコマンドが役立ちます。

  • .loadby sos clrCLR デバッグ拡張機能をロードするには
  • !pe例外の詳細をダンプします。
  • ~#s例外のあるスレッドに切り替える
  • !clrstackスレッドのスタックをダンプする
于 2012-07-23T11:06:32.060 に答える