2011-08-27 1 views
0

C#プログラミングを初めて試みたとき、最終的にはエラー報告にいくつかの進歩が見られました。アサーション、例外、内部例外は、ビジュアルスタジオで簡単にデバッグすることができます。残念ながら、この興奮は長続きしていませんでした。今は、BeginInvokeでのバグのコールスタックレポート、リリースされたasp.netアプリケーションでのバグのライン番号レポート、ビジュアルスタジオのないコンピュータに関するエラー情報など、 (デスクトップアプリケーションのビルドをデバッグする)などです。したがって、C#のエラー報告は、C++のエラー報告と同様に終わりです。Debug.AssertをオーバーライドしてVisual Studioなしで動作させる方法

私の質問は、すべてのビルドでDebug.Assertを動作させる方法です。特にビジュアルスタジオから実行していないとき、特にビジュアルを持っていなくても、正しい行番号とコールスタック情報を報告するようにします。スタジオがインストール?

+0

「バグのある行番号」を示すコード例はありますか?私はあなたが何を意味するか分からない。 –

答えて

1

コールスタックの行番号は、Visual Studioに依存していないか、Visual Studioが必要です。ビルドプロセス中に作成されたPDBファイルが必要です。 EXEとDLLに同じフォルダに対応するPDBファイルがある場合、(例外/アサートからの)すべてのスタックトレースには行番号が含まれます。 Visual StudioのC#およびVisual Basicプロジェクトで

0

は、デバッグビルドではデフォルトで、「DEBUG」条件付きコンパイルシンボルが定義され、「TRACE」のシンボルは、デバッグとリリースの両方のために定義されますが、希望した場合

を構築しますDebug.Assertを取得すると、プロジェクトにDEBUGフラグを設定する必要があります。 - プロジェクトを右クリックします。 - [ビルド]タブに移動 - [デバッグ定数の定義]チェックボックス があります。チェックするだけです。 (プロジェクトのリリースモードとデバッグモードの両方で実行します)。

それとも

あなたは、あなたのプロジェクトが定義/としてcomplie /構築する必要があります:DEBUG、TRACE。

関連する問題