Как отключить генерацию pdb и vshost для всех релизных сборок

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

Вопрос

Каждый раз, когда я запускаю новую часть программного обеспечения, мне приходится заходить в конфигурацию и отключать генерацию файлов pdb и процесс размещения Visual Studio для релизных сборок.Есть ли какой-нибудь способ сообщить Visual Studio (конкретно 2008), что я хочу делать это для всех проектов до конца времени?

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

Решение

После некоторого изучения выясняется, что файлы проекта для C # хранятся в \program files\microsoft visual studio 9.0\common7\ide\projecttemplatescache\csharp\windows\1033.Путем добавления <UseVSHostingProcess>false</UseVSHostingProcess> перейдя к правильным разделам (есть отдельные разделы для конфигураций отладки и выпуска) соответствующих шаблонов, вы можете отключить процесс размещения для всех будущих проектов выбранных типов.

Вы должны быть в состоянии справиться с проблемой PDB аналогичным образом, но, как я уже сказал, я не рекомендую отключать их, поэтому я оставлю это в качестве упражнения :)

Это относится к VS2008, но я предполагаю, что другие версии имеют аналогичную схему.Фактически, VS2010 использует тот же подход, но, очевидно, номер версии в каталоге равен 10.0 вместо 9.0.

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

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

Установите для этого значение "нет", чтобы подавить генерацию pdb.

Почему бы не добавить шаг post build, который удаляет эти файлы, которые вам не нужны.Хм, это еще один шаг, не то, что ты хотел :-(

Как насчет написания небольшого вспомогательного приложения, которое выполняет цикл поиска FindFirstFile и FindNextFile, ища файлы PDB и shost в каталогах вашего выпуска.Когда он находит их, он удаляет их.Или, что еще лучше, перемещает их в архив - это позволяет удалить их из проблем с упаковкой релиза, но при этом сохранить файлы на случай, если они понадобятся вам для анализа ошибок.

Кроме того, поскольку это вспомогательное приложение, вы можете просто запустить его один раз в рамках предварительной передачи полномочий для освобождения персонала.

Мы используем эту технику для многих вещей:

  • Обеспечение актуальности библиотек DLL (в основном интеллектуальное обновление для всего дерева сборки)
  • Очистка сборок VC лучше, чем "пакетная сборка" (удаление некоторых из тех файлов, которые могут привести к сбою Visual Studio)
  • Архивирование определенным образом (аналогично тому, что я вам предложил)
  • и т.д.

Я согласен с Брайаном - ты должен сохранить эти файлы.Если вам нужно отладить какую-либо ошибку или сбой, вам понадобятся эти файлы.

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