Visual Studio создает мой проект с несколькими неиспользуемыми файлами и библиотеками - PullRequest
4 голосов
/ 02 июня 2009

Некоторое время назад у меня была визуальная студия, производящая сборки, в которых были всевозможные дополнительные файлы. Я проверил все, что я знаю, откуда они могут исходить, и у меня нет идей.

Например, я ранее использовал MbUnit, но теперь я использую nunit. Ни один из моих проектов даже не ссылается на MbUnit, но он все еще появляется в моих папках bin \ Debug и bin \ Release при сборке. Кроме того, мой проект начальной загрузки даже не ссылается ни на какие библиотеки, использующие тестовую среду, так почему он появляется в BootStrapper \ bin \ Relase?

Также файлы pdb для некоторых (но не для всех) моих проектов и файлов vshost продолжают передаваться в директории bin, даже когда я собираюсь с целью Release. Я совсем не возился с определением цели конфигурации!

Кто-нибудь знает, откуда они могут исходить? Должно быть, мне не хватает некоторых знаний.

Ответы [ 3 ]

5 голосов
/ 02 июня 2009

По умолчанию в сборках выпуска создаются файлы pdb, поэтому их можно увидеть там. Я бы предположил, что то же самое верно и для файла vshost. Если вы хотите собрать без них, откройте настройки проектов (из контекстного меню проекта в обозревателе решений) перейдите на вкладку «сборка», в верхней части убедитесь, что вы смотрите на конфигурацию релиза, а затем нажмите «Дополнительно». кнопка внизу. В новом всплывающем окне есть выпадающий список с пометкой «Информация об отладке», установите его равным none, чтобы отключить создание pdb.

Что касается ссылок, это не похоже на правильное поведение, но следует учитывать, что они рекурсивные, поэтому, если projectA ссылается на projectB, а projectB ссылается на mbunit, тогда dll mbunit будет скопирован в любую папку сборки для projectA. Возможно, вы пропустили где-то одну ссылку, и это распространяется по всему вашему решению ...?

Также убедитесь, что вы перестраиваете решение, а не создаете - сборка не избавит от файлов, которые уже существуют в папке. Еще лучше вручную удалить папку bin и obj перед сборкой, чтобы убедиться, что у вас есть чистый лист.


Только что провел быстрый тест в Visual Studio, и похоже, что файл vshost создан для любого проекта, заданного в качестве проекта StartUp в отладчике и выпуске, как указано в параметре отладочной информации. Чтобы остановить это, вам нужно снять флажок «Включить процесс размещения Visual Studio» на вкладке «Отладка» в настройках проекта.

3 голосов
/ 02 июня 2009

Вы можете безопасно удалить файлы .pdb и файлы .vshost, первый предназначен для отладочной информации (да, даже сборки выпуска могут быть отлажены до некоторой степени), а второй - только для Visual Studio, он позволяет работать с vs как подключенный отладчик быстрее (опять релиз или нет).

0 голосов
/ 02 июня 2009

Простое удаление файлов из каталогов не остановит их появление в будущих сборках. Проверьте шаги до и после сборки в свойствах проекта. Если вам не нужны символы в сборках релизов, отключите параметры ссылок на символы отладки в свойствах проекта (но я бы порекомендовал сохранять их, если вы не пишете идеальный код).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...