1

私のwinformアプリケーションは、起動されるとすぐにクラッシュします。この問題は、クライアントコンピューターの1つでのみ発生しています。他のすべてのクライアントで正常に動作します。ADPlusを使用してクラッシュダンプを取得することを考えていましたが、問題はADPlusをクラッシュモードで構成するために、最初に実行中のアプリケーションにデバッガーを接続する必要があることです。つまり、ADPlusを構成するときはアプリケーションが実行されている必要がありますが、アプリケーションを起動するとすぐにクラッシュするということです。ADPlusを実行する機会はありません。ADPlusをこのシナリオで使用できるかどうかについて何か考えはありますか?この場合、プロセスダンプを生成するために使用できる他のツールはありますか?

4

2 に答える 2

2

プログラムを起動してからデバッガーを時間内にアタッチすることはできないため、次のいずれかのアイデアを試すことができます。

クラッシュが発生した場合、デバッガーは自動的に侵入し、ダンプを自動的に作成するか、手動で作成できるようにします。

ProcDumpでさえもデバッガーを実行できない場合は、Windowsの組み込みのクラッシュダンプ機能を使用して、ダンプを自動的に作成できます。

  • WindowsXPおよびWindowsServer2003では、次のコマンドを実行して、ワトソン博士を事後デバッガーとして設定します。

    drwtsn32 -i
    

    このコマンドの機能とワトソン博士の使用方法に関する情報は次のとおりです。アプリケーションのクラッシュダンプのキャプチャ

  • Windows Vista SP1、Windows Server 2008以降では、次のレジストリキーを作成して、ダンプをローカルに保存するようにWindowsエラー報告を設定します。

    HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps
    

    このキーの下に値やサブキーを作成または設定する必要はありません。設定を変更したい場合は、ここに詳細があります:ユーザーモードダンプの収集

    「.NETアプリケーションを含む、独自のカスタムクラッシュレポートを実行するアプリケーションは」WERではサポートされていないことに注意してください。アプリがWinFormsを使用しているため、これは問題です。ただし、この機能がWindows7の.NET4アプリで機能することを示す兆候がいくつかあります。

于 2012-01-18T08:37:09.947 に答える
0

SysinternalsのProcDumpを使用して、ダンプをキャプチャできます。

于 2012-01-18T04:48:28.123 に答える