/ASSEMBLYDEBUG (DebuggableAttribute の追加)
/ASSEMBLYDEBUG[:DISABLE]
/ASSEMBLYDEBUG は、DebuggableAttribute 属性とデバッグ情報追跡を出力し、JIT 最適化を無効にします。これは、ソースで次の属性を指定することと同じです。
[assembly:Debuggable(true, true)]; // same as /ASSEMBLYDEBUG
/ASSEMBLYDEBUG:DISABLE は、DebuggableAttribute 属性を出力しますが、デバッグ情報の追跡を無効にし、JIT 最適化を有効にします。これは、ソースで次の属性を指定することと同じです。
[assembly:Debuggable(false, false)]; // same as /ASSEMBLYDEBUG:DISABLE
既定では、DebuggableAttribute は出力されません。
DebuggableAttribute は、ソース コードでアセンブリに直接追加することもできます。次に例を示します。
[assembly:Debuggable(true, true)]; // same as /ASSEMBLYDEBUG
解説
Visual C++ .NET 2003 以降では、マネージ イメージがデバッグ可能であることを明示的に指定することが必要です。/Zi を使用するだけでは不十分です。
このほかにも、次のようなリンカー オプションがアセンブリの生成に影響します。
Visual Studio 開発環境でこのリンカー オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。詳細については、「Visual C++ プロジェクトのプロパティの設定」を参照してください。
[リンカー] フォルダーをクリックします。
[デバッグ] プロパティ ページをクリックします。
[デバッグできるアセンブリ] プロパティを変更します。
このリンカーをコードから設定するには
- AssemblyDebug を参照してください。