Отключение * .vshost.exe и других файлов от создания при сборке - PullRequest
34 голосов
/ 01 марта 2012

Я обнаружил следующую информацию о «дополнительных» файлах Microsoft Visual Studio:

Для чего нужен файл vshost.exe?

У меня вопрос, есть ли способ, которым я НЕ могу получить файлы .pdb, .manifest и vshost.exe? Или они абсолютно необходимы?

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

Ответы [ 2 ]

60 голосов
/ 01 марта 2012

Переключиться на конфигурацию выпуска.Затем Project + Properties, вкладка Debug, снимите флажок «Включить процесс размещения Visual Studio».Build + Clean, вы можете удалить все, что осталось, и оно не вернется.То, что эта опция включена по умолчанию для сборки выпуска, является, возможно, небольшим недостатком, но оправданным.

Процесс хостинга является настраиваемой размещенной версией CLR.Точно то, что он делает, плохо документировано, но это связано с настройкой параметров безопасности основного домена приложения.Я никогда не слышал, чтобы кто-нибудь жаловался на проблемы с CAS без него, но потом отключать его непривычно, и ваше приложение почти всегда работает с полным доверием при отладке из IDE.Было бы важно, если бы вы собирались в общий сетевой ресурс в ранних версиях .NET.Единственное, что очевидно из его отключения, это то, что все, что вы пишете с помощью Console.Write в приложении в стиле gui, больше не будет отображаться в окне «Вывод».Это не имеет никакого отношения к скорости, как утверждается в ответе, который высоко голосовал по ссылке, библиотеки DLL базовых структур уже находятся в ОЗУ, поскольку VS и MSBuild используют их.

Лучше всего просто не беспокоиться об этомперебор.Проект установки и развертывания игнорирует его.

1 голос
/ 17 января 2016

По поводу файлов vshost, по крайней мере, в VS2010:

  • Они генерируются не при сборке, а при выборе конфигурации сборки (она будет сгенерирована в выпуске при первом выборе выпуска) и при установке значения «Включить процесс размещения Visual Studio» в значение true. (Так как отладка конфигурации и эта опция установлены в значение по умолчанию, vshost.exe будет создан в bin / debug при открытии VS с целевым проектом по умолчанию.)
  • Они не очищаются при перестройке или очистке проекта, а только вручную, когда «Включить процесс размещения Visual Studio» имеет значение false, если VS с этим проектом открыт. (И он больше не будет генерироваться при открытии этого проекта.)

Если эта опция флага имеет значение true и VS с целевым проектом открывается, этот файл нельзя удалить как используемый. Если флажок снят, файл vshost.exe может быть немедленно удален.

Описание: создание и удаление этих файлов не связано с процессом сборки.

Кроме того, я могу добавить, что опция «Включить процесс размещения Visual Studio» в ссылочных проектах, которые являются библиотеками классов, не рассматривается. Эта опция рассматривается только для целевого проекта, который генерирует исполняемый файл.

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