При отладке программы с помощью Visual Studio вам предоставляется опция Enable the Visual Studio hosting process
. Какова цель этой опции и какой эффект она имеет?
Какова цель процесса хостинга Visual Studio?
Ответ 1
Библиотека MSDN не дает очень хорошей информации о "процессе хостинга". Последние две функции, перечисленные в ссылке Эрика, на самом деле являются проблемами, вызванными этой функцией. Есть еще один, с которым вам рано или поздно придется столкнуться: он использует другой файл app.config. Активный называется yourapp.vshost.exe.config. Следите за этим при внесении ручных изменений в файл.
Еще одна функция, которую он поддерживает, очень хорошо видна при отладке приложения, но нигде не упоминается, это то, что происходит с выводом, созданным Console.Write(). В неконсольном режиме приложение перенаправляется в окно вывода среды IDE. Очень полезно.
Термин "хостинг" относится к функции CLR, она может быть "размещена". Примерами пользовательских хостов CLR являются SQL Server и ASP.NET. Хостинг позволяет настроить CLR до его начала. Одним из основных применений этого является настройка основного домена приложений и настройка пользовательских политик безопасности. Именно это и делает процесс хостинга.
Хороший пример пользовательского хоста CLR доступен в этом вопросе.
Короче говоря: в режиме отладки вы работаете с настроенной версией CLR, которая улучшает опыт отладки.
Ответ 2
От MSDN:
Процесс хостинга Visual Studio улучшает производительность отладчика и включает новые функции отладчика, такие как отладка частичного доверия и оценка выражения времени разработки
Ответ 3
Здесь описано в MSDN: Отладка и процесс хостинга.