Изменить и продолжить: «Изменения не разрешены, когда ...» - PullRequest
97 голосов
/ 18 июня 2009

Даже если я создаю чистый проект WinForms, «Редактировать и продолжить» не работает и выдает ошибку:

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

  1. Параметр «Изменить и продолжить» отмечен в меню «Инструменты» → «Параметры» → «Отладка».
  2. Оптимизация не включена.
  3. Похоже, что не настроен какой-либо управляемый профилировщик.
  4. Я работаю в режиме отладки
  5. Я работаю на 32-разрядном процессоре x64 и Windows XP, но установка цели платформы на x86, а не AnyCpu, не помогает.
  6. Восстановление установки Visual Studio не помогает.

Я также нашел эту статью на веб-сайте MSDN:

Неподдерживаемые сценарии

Редактировать и продолжить недоступно в следующих сценариях отладки:

  • Отладка в Windows 98.

  • Отладка в смешанном режиме (собственный / управляемый).

  • Отладка SQL.

  • Отладка дампа доктора Ватсона.

  • Редактирование кода после необработанного исключения, когда не выбран параметр «Развернуть стек вызовов на необработанных исключениях».

  • Отладка встроенного приложения во время выполнения.

  • Отладка приложения с приложением вместо запуска приложения с помощью «Пуск» из меню «Отладка».

  • Отладка оптимизированного кода.

  • Отладка управляемого кода, когда целью является 64-битное приложение. Если вы хотите использовать Edit и Continue, вы должны установить цель на x86. (Свойства проекта, вкладка «Компиляция», параметр «Расширенный компилятор».).

  • Отладка старой версии вашего кода после того, как не удалось собрать новую версию из-за ошибок сборки.

Но я могу ответить «Нет» каждому пункту в этом списке.

Раньше это работало, но несколько дней назад оно перестало работать, и я не знаю, в чем может быть причина.

Ответы [ 32 ]

3 голосов
/ 25 августа 2010

Для меня, по непонятной мне причине, параметр «Генерировать отладочную информацию» в «Расширенных настройках компилятора» был установлен на «pdb-only» вместо «Полный».

По умолчанию этот параметр всегда установлен на «Полный», но таинственный полтергейст изменил этот параметр прошлой ночью. :)

P.S. Я в Visual Basic .Net с Visual Studio 2010

3 голосов
/ 08 августа 2013

У меня была эта проблема в Microsoft Visual Studio 2008, и решение легко. когда вы запускаете свой проект, пожалуйста, установите в режиме «Отладка», а не «Выпуск». Решение от другого человека может быть полезным.

3 голосов
/ 29 июля 2016

«Редактировать и продолжить», если он включен, позволяет редактировать код только в режиме прерывания: например, приостановив выполнение по исключению или нажав точку останова.

Это означает, что вы не можете редактировать код, когда выполнение не приостановлено! Когда дело доходит до отладки (ASP.NET) веб-проектов, это очень не интуитивно понятно, так как вам часто хочется вносить изменения между запросами. В настоящее время код вашей (вероятно) отладки не запущен, но и не приостановлен!
Чтобы решить эту проблему, вы можете нажать «Разбить все» (или нажать Ctrl + Alt + Break ). Или же установите точку останова где-нибудь (например, в своем событии Page_Load), затем перезагрузите страницу, чтобы выполнение приостанавливалось при достижении точки останова, и теперь вы можете редактировать код. Четный код в .cs файлах.

2 голосов
/ 18 июня 2009

Это происходит, когда отладчик не достиг точки останова или вы не нажали Break All (пауза). Это не могло быть так просто, не так ли?

1 голос
/ 15 августа 2014

Я столкнулся с этим сегодня - оказывается, что если для параметра «Отладочная информация» задано значение «только для pdb» (или я думаю, что ни один из них), это не позволит редактировать и продолжить работу.

Сначала убедитесь, что для вашей Отладочной информации установлено значение "full"!

Свойства проекта> Сборка> Дополнительно> Вывод> Отладочная информация

1 голос
/ 29 октября 2013

Я сделал все изменения, упомянутые в каждом другом ответе, и никто не работал. Чему я научился? Включить и продолжить существует как в меню «Инструменты»> «Параметры»> «Отладка», так и в настройках проекта. После того, как я проверил оба, Enable и Continue работали для меня.

1 голос
/ 06 декабря 2010

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

1 голос
/ 20 апреля 2012

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

1 голос
/ 18 февраля 2010

Ошибка говорит о возможной причине: «отлаживаемый код был оптимизирован во время сборки или выполнения». Перейдите в Свойства проекта-> Отладка и снимите флажок Оптимизировать код для режима отладки.

1 голос
/ 22 апреля 2018

Включить редактирование и продолжить только работу, запустить IIS Express. Не работайте на локальной МКС или внешнем хосте.

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