Как сгенерировать PDB для управляемых .net проектов в режиме выпуска?

StackOverflow https://stackoverflow.com/questions/585397

Вопрос

Я знаю, что PDF-файлы генерируются для управляемый проекты в .NET, предоставляя компилятору аргумент /debug.Есть ли способ указать это в графическом интерфейсе VS (2005)?

Единственный способ, которым я пока мог заставить его генерировать PDF-файлы в режиме выпуска, - это вручную изменить файл .csproj и добавить :

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

в настройках "релиз":

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

Еще одна вещь:Я узнал из MSDN здесь что возможные значения для DebugType тег - это:

  • full
  • pdbonly
  • none

Как эти значения влияют на поведение компилятора?

Это было полезно?

Решение

В VS2008 вы можете установить свойство, используя свойства проекта -> Строить -> Дополнительно... -> Информация об отладке.

Другие советы

В ОТЛАДКЕ:

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

В ВЫПУСКЕ:

<DebugSymbols>true</DebugSymbols>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>

Я нашел этот МОНО-запрос это может пролить некоторый свет на то, в чем разница между 'full" и "pdbonly'.

csc имеет отладочный тип "pdbonly", который генерирует PDF-файлы при создании кода времени выполнения, т.е.оптимизирован, нет атрибутов отладчика и т.д.

Это важно для возможности получать полезные трассировки стека из кода качества выпуска.

Мне кажется, что существование 2 тегов (DebugSymbols и DebugType) является избыточным.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top