it-swarm.com.ru

VS2015 Проект больше не работает в режиме отладки

Это то, что я получаю, даже когда я запускаю в конфигурации отладки.

Я смог показать это, включив «Просто мой код» и «Предупреждать, если при запуске не было пользовательского кода». Это то, что недавно произошло с нашим проектом, и я не уверен, что мы сделали, чтобы вызвать это. Но я не смог это исправить. Точки останова не срабатывают, а быстрое наблюдение дает странные результаты. 

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

Update: я проверил менеджер конфигурации, и каждый проект также настроен на отладку. enter image description here

Update 2: я отключил «Включить оптимизацию» и больше не получаю диалоговое окно «Вы отлаживаете сборку релиза». Он работает и снова останавливается на точках останова! Однако окно вывода отображает это при запуске:

Символы для модуля «Navigo.exe» не были загружены.

  1. Используйте конфигурацию отладочной сборки или отключите параметр отладки «Включить только мой код». 
  2. Проверьте настройки «Символы» в разделе параметров отладки.

Так что это решает мою Первичную проблему: я больше не могу использовать точки останова и всплывающее окно. Что странно, так как я думал, что вам нужно загрузить символы для работы точек останова. Итак, как могут работать точки останова, если символы не загружены? Может это просто плохое сообщение?

93
Sen

Используйте Configuration Manager, чтобы проверить фактические параметры конфигурации Debug - они находятся в главном меню Build\Configuration Manager - если они настроены на использование Release:

 Configuration Manager

Также убедитесь, что проект правильно определяет DEBUG и что «Оптимизировать код» не проверено:

 Properties

88
stuartd

Это случилось со мной и на нескольких проектах. Я проверил мои настройки сборки, как предложено stuartd . Однако «Оптимизировать код» было не включено в моих настройках сборки. Я включил его и сохранил проект. Затем я снял флажок и снова сохранил. Задача решена.

Есть какая-то ошибка, из-за которой флаг --optimize+ передается отладчику. Включение, а затем отключение - это простой обходной путь, пока ошибка не будет устранена.

89
Adam J.

Просто хочу вмешаться и сказать, что это начало происходить со мной после применения Обновления 1. Существующие проекты начали показывать это, и я могу повторить это с новым проектом. Вся конфигурация установлена ​​на DEBUG, Оптимизация НЕ проверена. Самое главное, что запуск проекта в первый раз (или после очистки) выполняется без каких-либо сообщений. Остановка, а затем повторный запуск проекта (примечание - проект НЕ ПЕРЕЗАГРУЗЕН) отобразит диалоговое окно. Единственное решение состоит в том, чтобы отключить опцию Just My Code - что кажется взломом, как это было в предыдущем обновлении 1 без каких-либо проблем.

20
John T

Если ни одно из упомянутых решений не помогло, проверьте AssemblyInfo.cs вашего проекта для явного приложения DebuggableAttribute. Похоже, он переопределяет параметры отладки/выпуска компилятора.

В моем случае была эта строка в файле (устаревший проект, понятия не имею, как он туда попал). Удаление это решило проблему:

[Assembly: System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
12
Dmitry Rotay

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

9
Thijs
8
romanoza

Ни один из приведенных выше ответов не помог мне. Перезапуск IIS исправил это.

5
wezten

Примите во внимание, что это старый пост, но он первый появился в Google, когда я искал ответ, так что, вероятно, другие тоже придут сюда.

В моем случае проблема заключалась в том, что для URL-адреса проекта IIS на веб-вкладке свойств проекта ASP.NET был задан неправильный URL-адрес. Он указывал на http: // localhost , который я использовал с другой копией проекта. Адрес для решения, которое я открыл, фактически был настроен на моем локальном IIS как http: // localhost: 90 .

Изменение на правильный адрес устранило проблему.

 enter image description here

3
akiller

Просто добавив примечание к ответу Stuartd:

Убедитесь, что вы проверили все зависимые проекты на одинаковые параметры сборки. Вы получите то же сообщение «Запрос», если ваш основной проект имеет правильные настройки, а ваши зависимые проекты - нет. Имеет очевидный смысл в заднем плане, но не первое, что приходит на ум.

3
dispake

Я попробовал почти все в этом списке, но в конце я исправил это, открыв свойства решения и переключившись с «Несколько проектов запуска» на «Один проект запуска» и обратно.

  1. Щелкните правой кнопкой мыши на решении и выберите «Свойства»
  2. В разделе «Общие свойства» выберите «Несколько запускаемых проектов» на «Один запускаемый проект».
  3. Нажмите ОК
  4. Запустить отладку
  5. Завершите отладку и повторите шаги 1-3, но вернитесь к «Несколько запускаемых проектов»
  6. Запустите отладку снова с несколькими проектами
2
Fijjit

Для меня это была ссылка на Nuget с частного сервера Nuget. Я не знаю, как это было скомпилировано, но изменение ссылки на ссылку на проект помогло мне справиться с этой проблемой.

2
Crowcoder

У меня была такая же проблема ... Что бы я ни делал - ничего не получалось. Это был новый пустой проект, который был проблемой. Я закончил тем, что удалил проект и добавил новый проект - новый проект должен был иметь другое имя ; если я использовал то же имя, ошибка только что появилась - даже после перезагрузки, очистите и восстановите ... Это должно быть ошибка в VS 2015.

2
Kim Rasmussen

В моем случае я разрабатывал плагин VSTO для Outlook, и Outlook случайно загружал версию Release DLL, которую я недавно установил во время тестирования моего установщика. Похоже, что VS пытался использовать этот DLL вместо того, который я ожидал отладки. Исправление, которое DLL загружается Outlook, исправило это для меня.

1
Devin Dow

Я открыл свой проект VS2012Pro в VS2015Express и имел ту же проблему.

Я проверил свои свойства решения | Свойства конфигурации, и обнаружил, что проект был установлен в Release & x86. 

Я изменил его обратно на «Отладка и любой процессор», и запрос исчез.

1
Jason

Мое решение немного отличалось от всех остальных и немного уникально.

Я работаю с веб-сайтом, который содержит сочетание управляемого кода и классического ASP, оба ссылаются на одну и ту же сборку. Visual studio жаловалась, что моя управляемая DLL была сборкой релиза.

Эта проблема была неисследованным исключением в моей Ассамблее, но она была выброшена классической страницей ASP через взаимодействие. Visual studio не смогла справиться с отладкой и выдает сообщение об ошибке. То же исключение, которое выдается из управляемого кода, вызвало бы отладчик, как и ожидалось.

Исправление проблемы в конструкторе моей управляемой сборки исправило все.

Теперь все имеет смысл, когда я оглядываюсь назад на общую картину, но в то время сообщение об ошибке привело меня к очень глубокому пути, и я пробовал все в этой теме, пока у меня не появилось это «Ах-ха!» момент.

0
Matt

Я столкнулся с некоторой проблемой, и наконец решил ее, выбрав «Отключить только мой код и продолжить».

Просто моя настройка кода

0
Sha-Pai Li

Это было странное предупреждение.

Перестройка решения не обязательно очистит все библиотеки DLL (особенно те, которые скопированы из зависимых проектов).

Однако перестройка проекта зависимостей убрала это предупреждение.

Столкнулся с этим с VS2015 Update 3.

0
Abu Abdullah

Копирую мой другой ответ из здесь .

Как упомянул @romanoza, Microsoft обновила отчет об ошибках следующей информацией:

Снимите флажок Отладка -> Параметры -> Подавить оптимизацию JIT при загрузке модуля (только управляемая)

Это обходной путь. Они говорят позже:

Мы рекомендуем людям не проверять его, так как его отключение улучшит производительность и поведение только моего кода в определенных сценариях.

Наконец, подтверждение:

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

0
Nate Cook

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

 enter image description here

0
Milan

Шаги разрешения:

Зайдите в настройки сборки проекта-нарушителя.

Прокрутите вправо до кнопки «Дополнительно».

Убедитесь, что для «Debug Info» НЕ установлено «none».

Я рекомендую вам использовать полную опцию. 

Рад помочь вам 

0
Igor Quirino

После просмотра ссылки Патрика как комментария к вопросу , кто-то заметил обходной путь, который должен был остановить сайт в IIS Express. Я смог предотвратить возникновение этой же проблемы, выполнив это только после остановки отладчика в Visual Studio. Однако я больше разбирался в этом и считаю, что это также может быть связано с настройкой «Редактировать и продолжить» для отладчика. Когда я отключил это в настройках Visual Studio, у меня больше не было проблемы. Но тогда это помешает вам использовать функцию «Изменить и продолжить», поэтому не уверен, стоит ли это того.

Инструменты> Параметры> Отладчик> Изменить и продолжить (прокрутите вниз до общего списка)> Снимите флажок Редактировать и продолжить.

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

0
verbal

Я провел 2 дня, и похоже, что Reset the Visual Studio 2017 Experimental Instance помог мне.

0
wishmaster35