8

コンパイラに/debug引数を与えることにより、.NETの管理対象プロジェクト用にPDBが生成されることを私は知っています。VS(2005)GUIでこれを指定する方法はありますか?

これまでのところ、リリースモードでPDBを生成するために取得できる唯一の方法は、.csprojファイルを手動で変更し、以下を追加することです。

<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>

「リリース」設定の下:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">

もう1つのこと:ここDebugTypeでMSDNから、タグの可能な値は次のとおりであることを学びました。

  • full
  • pdbonly
  • none

これらの値はコンパイラの動作にどのように影響しますか?

4

3 に答える 3

7

VS2008 では、プロジェクト プロパティ->Build ->Advanced... ->Debug Info を使用してプロパティを設定できます。

于 2009-02-25T10:03:12.123 に答える
7

デバッグ中:

<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>

リリース:

<DebugSymbols>true</DebugSymbols>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
于 2009-04-03T16:35:31.930 に答える
5

「 」と「 」の違いを明らかにする可能性のあるこの MONO リクエストを見つけました。fullpdbonly

csc には、pdbs を生成する「pdbonly」debugtype があり、実行時コードを生成します。つまり、最適化され、デバッガー属性はありません。

これは、リリース品質のコードから有用なスタック トレースを取得できるようにするために重要です。

2 つのタグ (DebugSymbols と DebugType) の存在は冗長に思えます。

于 2009-02-25T10:01:04.017 に答える