Visual Studio блокирует файлы во время отладки

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

ОБНОВЛЕНИЕ:

Я использую Win XP SP3 32bit. Visual Studio 2010, С#. Редактировать и продолжить включен. Решение содержит 6 проектов (число на самом деле не важно), 5 из них зависят от проекта уровня доступа к данным, который использует Entity Framework. Ни у одного из 5 нет взаимных зависимостей. Это WinForms и консольные приложения. Я хотел бы иметь возможность запускать один из проектов и вносить изменения в другие, не останавливая первый. Проблема в том, что запуск и остановка проекта занимают значительное время.


person Max    schedule 26.06.2010    source источник


Ответы (3)


Функция «Редактировать и продолжить» не позволяет редактировать файлы, если отладчик не остановил программу. Простой обходной путь — «Отладка + Прервать все», после чего вы сможете редактировать файлы, ваши изменения вступят в силу немедленно, если ваши изменения не нарушают ограничения, наложенные E+C. Это самый эффективный рабочий процесс.

Жесткий подход — отключить «Редактировать и продолжить». Инструменты + Параметры, Отладчик, Изменить и продолжить, снимите флажок Включить.

person Hans Passant    schedule 26.06.2010
comment
очень хороший! я не могу использовать эту функцию в vs - она ​​предупреждает о том, что 64-битные приложения не поддерживают это ... так что теперь я могу добавлять комментарии во время отладки :) - person kokbira; 14.06.2012
comment
Я отключил «Редактировать и продолжить», как описано, но VS по-прежнему не позволяет мне редактировать файлы во время работы. Это сводит меня с ума. Он даже не позволяет мне прокручивать конструктор XAML, если приложение запущено. - person devios1; 02.11.2016
comment
МОЙ БОГ! Большое спасибо! Я начал сходить с ума! - person Simon Germain; 26.12.2017

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

person Maurizio Reginelli    schedule 26.06.2010
comment
Но с какой стати это делать? Нет никакой пользы от блокировки каждого файла в проекте (включая сам проект) во время отладки. VS не зависит от них после того, как они были скомпилированы. Это просто бессмысленное ограничение, которое абсолютно не раздражает. - person devios1; 05.11.2016

Это не совсем отвечает на вопрос ОП как таковой, но для тех, кто наткнулся на эту страницу в той же (очень расстроенной) лодке, что и я, это может помочь.

Решение: начать без отладки.

Меня сводило с ума то, что Visual Studio не позволяла мне редактировать файлы во время работы приложения. Мой типичный рабочий процесс:

  1. Внесите некоторые изменения
  2. Запустите приложение, чтобы увидеть последствия этих изменений.
  3. По результатам вносить больше изменений и т.д. и т.п.

Проблема в том, что Visual Studio не позволяла мне выполнить шаг 3. Она требует, чтобы вы ПРЕКРАТИЛИ запуск приложения, прежде чем вы сможете даже внести какие-либо изменения (в том числе в файл XAML или добавить файл в проект), что также означает, что вы не можете вернитесь в приложение, чтобы перепроверить что-то, пока вы на самом деле программируете это в то же время (я так работаю, братан).

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

person devios1    schedule 04.11.2016