Не работают точки останова visual studio

Не работает точка останова при отладке

Возникла проблема, когда я пытался настроить публикацию проекта в свойствах поковырялся, после чего при запуске проекта не срабатывает точка останова (выглядит пустой коричневый кружок с жёлтым восклицательным знаком). При на ведении выводит сообщение — «в настоящий момент попадание в точку, остановка не произойдёт. Нет загруженных символов для этого документа.» Загружаю другой проект — всё нормально остановка происходит. Подогнал свойства проекта как в том, где всё ок, но проблема не решается. Может у кого была такая проблема подскажите что не так? Какие могут быть символы не загружены?
студия 12.

Добавлено через 11 минут
Включил анализ кода при построении проекта, выдало сообщение что нет отладочной информации, включите pdb файл. Он действительно пропал, но не знаю где его теперь искать.

Добавлено через 5 часов 27 минут
Кто-нибудь знает как создать файл .pdb в папке Debug ?

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не работает (?) точка останова
Ставлю ее перед return, а окно все равно мигом закрывается. Как быть?

Как работает точка останова Отладчика?
Что такое точка останова Отладчика, и как она работает? Зачем нажимать F8, у меня только красная.

Каким образом можно при отладке в модульном проекте поставить точку останова в библиотеки JSTL — Intellij Idea
Каким образом можно при отладке в модульном проекте поставить точку останова в библиотеки JSTL .

При удалении указателя срабатывает точка останова
В принципе, в заголовке все есть. Добавлю лишь, что я всего лишь маленький ламер, камнями не.

Источник

Как мне исправить «Точка останова в настоящее время не будет достигнута. Для этого документа не загружены символы ». предупреждение?

Настольное приложение C # в экспресс-версии работало, но через 5 секунд перестало работать.

Я пробовал следующее:

  • Убедитесь, что конфигурация отладки, флаг отладки и полная отладочная информация установлены для всех сборок.
  • Удалите все папки bin и obj и все файлы DLL, связанные с проектом, со всей моей машины.
  • Воссоздайте проекты, из-за которых возникла проблема, с нуля.
  • Перезагружать.

У меня в решении два проекта Windows Forms. Один из них загружает отладочную информацию, другой — нет. Оба они относятся к сборке, для которой я пытаюсь получить отладочную информацию точно так же в файле проекта. Есть идеи?

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

  • 124 Во время отладки перейдите к представлению «Отладка, Windows, модули». Это покажет информацию о загруженных модулях и статусе символа. Вы можете щелкнуть модуль правой кнопкой мыши и попытаться загрузить символы из другого места.
  • 14 Экспресс-версия не имеет представления «Модули».
  • 12 Хорошее замечание о сборках, которые не загружаются, пока они не понадобятся. Отладчик покажет, что точка останова не будет достигнута, но отображение изменится / ваша точка останова будет достигнута после загрузки сборки. Дрянным обходным решением этой проблемы пользовательского интерфейса было бы вызов сборки при запуске программы для принудительной загрузки сборки.
  • 1 У меня была такая же проблема, и я заметил, что для этой конфигурации сборки у меня не было правда под ним в VS2015 я вручную добавил его, и он работал нормально.
  • 4 Удаление файла .suo могло бы решить эту неприятную проблему в моем проекте

1 2 3 4 Вперед

Начните отладку, как только вы достигли точки останова или использовали , используйте . Вы увидите список всех сборок, которые загружены в процесс. Найдите тот, для которого хотите получить отладочную информацию. Щелкните его правой кнопкой мыши и выберите «Информация о нагрузке символа». Вы увидите диалоговое окно, в котором перечислены все каталоги, в которых он искал файл .pdb для сборки. Сравните этот список с фактическим расположением .pdb. Убедитесь, что он не нашел старый.

В обычных проектах сборка и ее файл .pdb всегда должны быть скопированы средой IDE в ту же папку, что и ваш .exe. Папка bin \ Debug вашего проекта. Убедитесь, что вы удалили один из GAC, если вы играли с ним.

  • 4 По сути, это была проблема в моем случае. У нас был посткомпиляция, из-за которой он не считался «пользовательским кодом» . теперь я должен посмотреть, что с этим делать, но я подтвердил, что без посткомпиляционных модификаций символы загружаются. @ Ханс, спасибо, сэкономил мне несколько минут! отправляет виртуальное пиво
  • 30 Речь идет о экспресс-издании, к которому, к сожалению, этот ответ не относится. На самом деле ни один из ответов у меня не работает, я также попытался удалить папку Debug и восстановить.
  • 3 Microsoft Visual Studio Express 2013 для Интернета не поддерживает функцию отладки модулей Windows. Как исправить это в этом случае?
  • 3 В качестве подсказки включите свои исключения, чтобы они прерывались там, где вы хотите (если вы не можете поставить точку останова в начале процесса) . Затем вы следуете рекомендованному Ханом процессу Отладка> Windows> Модули . Найдите проект, в который вы пытались войти, и посмотрите ПУТЬ. если он говорит «C: \ windows \ assembly», то это указывает на dll GAC, а НЕ на проект .
  • 6 у меня была активная конфигурация решения моего решения, установленная на Release, вернув ее на Debug, чтобы решить мою проблему. Этот ответ помог мне «вспомнить», что искать
Читайте также:  Lumax пульт для приставки не работает

Убедитесь, что вы не в выпуске, а в отладке.

Сначала попробуйте перестроить свой проект, щелкнув проект правой кнопкой мыши> Перестроить. Если это не сработает, попробуйте очистить проект (щелкните проект правой кнопкой мыши> очистить)

Если это не сработало, проверьте следующее:

  1. Щелкните правой кнопкой мыши по вашему проект
  2. Выбрать [Свойства]
  3. Выберите [Сборка] вкладка
  4. Убедиться [Определить константу DEBUG] а также [Определить константу TRACE] проверены
  5. Убедиться [Оптимизировать код] не отмечен
  6. Щелкните значок [Дополнительно] кнопка внизу вкладки Build
  7. Убедись в том, что [Отладочная информация:] установлен на [полный]
  8. Нажмите [OK] и перестроить проект 😉

(шаг 6 генерирует файлы .pdb, это символы отладки)

  • 42 Убедитесь, что для параметра [Debug Info:] установлено значение [full] — это исправлено для меня! В моем проекте настроено несколько конфигураций, в новых, которые я добавил, этого набора не было.
  • 1 Это сработало для меня! Но вместо [полного] я смог сделать только pdb
  • 45 Оказывается, я был в сборке релиза. тск.
  • 2 Если у вас смешанный проект C ++ / C # с собственным запуском, убедитесь, что в разделе «Отладка»> «Тип отладчика» этого проекта установлено значение «Смешанный».
  • 4 Я также должен был убедиться, что был не отмечен.

Просто попробуйте что-то простое — возможно, вы уже это пробовали. Щелкните правой кнопкой мыши Решение в обозревателе решений, щелкните «чистое решение» — удаляет все скомпилированные и временные файлы, связанные с решением..

Выполните перестройку решения и попробуйте снова отладить.

У меня также были проблемы с точками останова в нескольких проектах в решении — некоторые скомпилированы как x86, некоторые как x64.

  • 5 Как вы исправляли точки останова в нескольких проектах в решении — некоторые были скомпилированы как x86, некоторые как x64?
  • 3 Если вы используете IISExpress (или эмулятор Azure), файлы в C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root могут не обновиться, если ваша версия AssemblyVersion — 1.0.0.0. Убедитесь, что это что-то вроде 1.0. *, Чтобы новая версия создавалась каждый раз, когда вы создаете свой веб-проект. Clean Solution не очищает папку временных файлов Интернета.
  • 1 Это то же самое, что и при выполнении Rebuild All.
  • 2 @jonathan Wood — Я почти согласен с этим. Но в редких случаях Rebuild All может давать несколько другие результаты — я знаю, что временами видел странные различия. Посмотрите здесь интересное обсуждение: stackoverflow.com/questions/1247457/…
  • 1 Для меня это было просто «Сборка» . «Чистое решение»

Отключите параметр «Только мой код» в настройках «Отладка / Общие».

  • 2 Да, в проекте Windows Phone 8 с настраиваемой конфигурацией сборки это то, что мне удалось.
  • Это было то решение, которое мне понадобилось при удаленной отладке на автономном сервере IIS.
  • 2 У меня работал с Windows Phone 8.1 и VS Community 2015.
  • 21 Для ясности: в VS 2017 этот параметр находится в диалоговом окне «Инструмент», «Параметры» на панели «Отладка», «Общие» (если быть точным, панели «Отладка» нет). Флажок называется «Включить только мой код», а не «Только мой код».
  • 1 Это работает для меня, однако я не вижу значение переменной при наведении или сдвиге + f9 с ошибкой Невозможно получить значение local или аргумента, так как оно недоступно в этом указателе инструкции, возможно, потому, что оно было оптимизировано.

Перекрестная публикация этого исправления от Hans K, которое я нашел в аналогичной теме >> ЗДЕСЬ Свойства

Посмотрите в Common Properties -> Startup Project

Выберите несколько запускаемых проектов

выберите «Начать действие» над проектами, которые нужно отлаживать.

  • 7 Это также обрабатывает ситуации, когда вы пытаетесь отладить WEB-проект, который представляет собой конечную точку удаленного взаимодействия .NET, работающую на сервере разработки VS и показывающую «не загружены символы».
  • 1 Это исправило это для меня. Я думаю, что раньше кто-то пытался прикрепить отладку к локальному серверу IIS вместо отладочной версии IIS, которую использует Visual Studio.
  • 1 Если вы удалили файл .suo, вы можете потерять выбранные здесь настройки решения, и вам придется установить их снова.
  • Сегодня я снова проверил эти настройки после успешной отладки и обнаружил, что мои запускаемые проекты каким-то образом вернулись к одному запускаемому проекту. Стоит дважды проверить.

Выбранный ответ привел меня к решению моей проблемы. Но мне нужно сделать еще несколько вещей:

Даже если в раскрывающемся списке выбрано «Отладка»:

И в проекте Properties> Build:

Visual Studio не загружала символы в конкретный проект. Поэтому в этом раскрывающемся списке я выбираю «Configuration Manager» и вижу, что настройки моего веб-проекта неверны:

Затем я установил для него значение «Отладка», и он начал генерировать файл . НО Мне нужно вручную скопировать PDB и DLL и поместить в папку, которую искал VS (вот где мне помог выбранный ответ):

  • 1 Я работал в режиме . Спасибо !!
  • Ключевым моментом для меня было то, что флажок «Развернуть» не был установлен, поэтому pdb не был повторно развернут после сборки.

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

В моем случае IIS Express, казалось, загружал другую DLL из временных файлов ASP.NET.

  1. Перейдите к C: \ Users \ \ AppData \ Local \ Temp \ Temporary ASP.NET Files \ vs
  2. Удалите все в этом каталоге!
  • Это была моя проблема, папка должна была быть заполнена сломанными DLL, которые загружались в качестве предпочтения.
  • 9 Это сработало для меня, за исключением того, что в моем случае мне пришлось очистить каталог C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ vs \
  • У меня была аналогичная проблема, когда у меня уже было установлено это приложение, и оно загружало эту DLL вместо той, которая была из моего проекта, без связанного файла PDB. После удаления старого приложения проблема была решена для меня. Спасибо!
Читайте также:  Как настроить пропавший канал триколор

Мне удалось исправить ошибку, просто установив для параметра «Присоединить к процессу» значение «Автоматически определять тип кода для отладки», как показано на прилагаемом снимке экрана.

Просто следуйте инструкциям ниже:

  • Идти к Отлаживать из строки меню
  • Нажмите на Присоединить к процессу
  • Рядом с Прикрепить к вариант, нажмите на Выбрать кнопка
  • В Выберите тип кода окно появится
  • Теперь выберите вариант Автоматически определять тип кода для отладки и нажмите кнопку ОК.

  • 11 Для тех, кто перепробовал все на этой странице, я исправил свою проблему, переключившись на «Управляемый (v4.5, v4.0) код»!
  • Переключение на «Управляемый (v4.5, v4.0)» также устранило это для меня при отладке приложения DNN ASP.Net. Спасибо!
  • У меня сработало переключение с «Автоматически определять тип кода для отладки» на «Управляемый (v4.6, v4.5, v4.0)». У меня есть решение с двумя библиотеками классов, одна из которых доступна через COM, обе нацелены на framework 4.6.1.
  • У меня был выбран неправильный вариант («.NET Core» вместо «Managed v4.6»). Я выбрал «Автоматически определять . », и это сработало! Первоначально я нашел это решение в том сообщении в блоге blog.simontest.net/….

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

  • 7 Это действительно должно быть где-то вверху. Я потратил много времени, выполняя все вышеперечисленные ответы, но точка останова действительно была бы достигнута. Просто проверьте 🙂 Кроме того, это было настольное приложение WPF.
  • 4 aspx, похоже, компилируется по запросу, поэтому отладочная информация доступна только после того, как потребуется страница aspx
  • Также для UnitTesting — вам нужно подождать несколько секунд, а затем он попадет.
  • Я думаю, что комментарий @aeroson — это то, с чем я столкнулся. Одна страница загружала точки останова, другая — нет. Пробовал все из ответов здесь, а затем обновил эту страницу и загрузил точки останова.
  • спасибо . копался полчаса и только что понял, что точка останова все еще попадает .

Убедитесь, что ваш файл .pbd отсутствует в папке bin / Debug. Если это так, перейдите в «Свойства» вашего проекта, выберите «Сборка», а затем «Дополнительно» внизу. В открывшемся новом окне в разделе «Информация об отладке» выберите «полный». Это была моя проблема, и я решил ее.

  • Я бы посоветовал всем, кто зашел на эту страницу, убедиться, что pdb создается, поскольку это было проблемой для меня.
  • Спасибо! «pdb-only» (а не полный) было достаточно. Кроме того, «Advanced» — это кнопка внизу Build.
  • где должны генерироваться pdbs?
  • 1 Спасибо, это исправило для меня это после того, как я сделал новые преобразования Web.config и удалил конфигурации по умолчанию (например, Web.Debug.config), которые предоставляет VS 2017.
  • 1 Пробовал много других вариантов (потрачено впустую почти 2 часа) Этот «полный» вариант решает мою проблему. Спасибо!

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

Решением было снять этот флажок.

  • 2 Это была моя проблема, и я рассмотрел все вышеперечисленные решения одно за другим, ничего не помогло.
  • Я снял отметку с этой опции, чистое решение, восстановленное решение и т. Д. VS всегда считал модуль «оптимизированным». Единственный способ заставить VS обновлять отладочную информацию — это увеличить версию сборки модуля.
  • Единственное решение, которое работает для меня, # для вас (# = ++++), но я могу проголосовать только один раз

Просто проверьте, находится ли ваше решение в режиме выпуска.

  • 1 потребовалось почти 4 часа, чтобы выяснить эту проблему. Спасибо

Попробуйте запустить Visual Studio от имени администратора в Windows.

  • 1 Мне пришлось запустить msvsmon от имени администратора на удаленной машине.
  • Это не решение, которому люди должны следовать. Если это решит проблему, вам следует сосредоточиться на том, зачем вам нужны права администратора, чтобы VS могла читать содержимое файла .pdb вашего проекта.
  • @Jazimov Я не согласен. Хотя мне бы хотелось потратить время на изучение этого вопроса, в моем случае это решило мою проблему и позволило мне продолжить работу, как, я уверен, и для других. Если вы хотите изучить это и улучшить этот ответ, не стесняйтесь, это то, для чего он нужен.
  • Для ясности: я понимаю, что проблема с Visual Studio решена, я не об этом спорил. Я оспариваю рекомендацию о том, что другие соглашаются запускать IDE как то решение, а не простое а решение. Если запуск IDE от имени администратора устраняет проблему, эту информацию следует использовать для устранения реальной основной причины, чтобы IDE не требовала прав администратора для правильной работы.

В моем случае я пытаюсь отлаживать в режиме relase. Как только я переведу его в режим отладки. Это работает

Вам необходимо включить «Генерировать отладочную информацию» в настройках компилятора.

  • 1 Где это должно быть?
  • 10 Это то же самое, что и ответ juFo — Project> Properties> Build> Advanced> Debug Info> Full (или pdb-only)
  • Послушайте Джереми Томпсена. Это устранило проблему для меня.
Читайте также:  Как настроить thomson цифровое телевидение

Отладка Опции Общие Снимите флажок «»

Это сработало для меня.

  • 1 Похоже, это может быть параметр по умолчанию, который стоит проверить, обновляете ли VS до более новой версии (как это случилось со мной).

Проверьте раскрывающийся список . Убедитесь, что вы выбрали , а не .

Мы нашли причину нашей проблемы. Этот код использовал атрибут «CodeBehind» в директиве страницы файла .aspx вместо атрибута «CodeFile» (ASP.NET 2.0 и выше). После дней отчаяния проблема была решена простым поиском и заменой.

Опция «Начать отладку, Отладка + Windows + модули» не существует в Microsoft Visual Studio Express 2013 edition.

Снятие отметки «Использовать режим управляемой совместимости» в параметрах инструментов отладки это исправлено.

Я перепробовал все, что было сказано выше, но ничего не вышло. [Очистите решение и проверьте наличие файлов PDB и т. Д.]

Даже публикация того же решения не решила проблему.

Затем я вернулся к тому, что я обычно делаю, чтобы решить (обмануть эту упрямую Visual Studio)

Все, что я сделал, — это сознательно изменил код и опубликовал решение. Затем я отменил изменение и снова опубликовал.

Вуаля [PDB файлы избавляют от злых духов] .. Не умное решение, но это сработало . — |

Только веб-приложения (IIS Express):

  • Щелкните правой кнопкой мыши IIS Express Tray и закройте IIS.
  • Чистое решение

  • Я попробовал многие другие предложения в других ответах, многие из которых помогли мне в прошлом, но сегодня помогло. В моем случае у меня есть несколько веток, и я думаю, что IIS Express каким-то образом застрял в другой ветке и не обновлялся с веткой, которую я пытался отлаживать, несмотря на мои многочисленные попытки очистить и перестроить.
  1. Чистое решение и восстановление
  2. Убедитесь, что для конфигурации задано значение «Отладка».
  3. Убедитесь, что файл PDB находится в папке Debug.
  4. В меню «Отладка» выберите «Включить все точки останова».

Убедитесь, что следующие два параметра одинаковы в Visual Studio:

Щелкните правой кнопкой мыши тестовый проект, перейдите на вкладку «Свойства», «Сборка» и посмотрите Целевая платформа

Мои все настроены на «Любой процессор», поэтому x64

На панели главного меню выберите Тест, Настройки теста, Архитектура процессора по умолчанию

Мой был установлен на X86

Изменив это на X64 в соответствии с вышеуказанной настройкой встроенное в Visual Studio меню «Тесты отладки» работает и достигает точек останова, которые ранее игнорировались с сообщением «Точка останова в настоящее время не будет достигнута. Для этого документа не загружены символы ».

Обновить:

За Visual Studio 2019 меню немного перемещено:

Ни один из этих ответов не решил мою проблему. Я попробовал другое, основываясь на том, что проект с остановкой на самом деле не был загруженным. Как писал Ханс Пассан, я обнаружил, что .dll, в которой я хочу остановить отладчик, и связанные файлы .pdb скопированы рядом с файлом .exe. У этих файлов более старая дата, поэтому я подумал, что они не обновлялись во время выполнения. Я вручную удалил их, Visual Studio создала еще одну пару И поместила эту новую пару рядом с .exe. Теперь точки останова работают!

Возможно, Visual Studio не может скопировать и ЗАМЕНИТЬ существующие файлы (.dll и .pdb) рядом с .exe, поскольку там есть другие. Поэтому, если я удалил вручную, VS может создать новый рядом с .exe.

Я думаю, что другие изменения (проверки и т. Д. — из других ответов) что-то сработали, и Visual Studio скопировала и заменила dll и pdb из папки проекта в папку рядом с exe, так что это было решение.

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

Может этот ответ кому-то поможет!

Что нужно проверить, чтобы быть ясным: убедитесь, что у вас установлена ​​конфигурация «Отладка», а не «Выпуск». Вы можете отлаживать запускаемый проект в режиме «Release», но не в библиотеке классов, на которую указывает ссылка.

Свойства проекта (затем выберите конфигурацию сборки)> Вкладка Сборка> Дополнительно . > Информация об отладке (раскрывающийся список)

Установите значение ‘all’ или ‘pdb-only’, затем перестройте

  • я сделал pdb_only, также очистил и перезапустил браузер

Вместо того, чтобы делать все это просто

Закрыть и снова открыть

решение, которое устранит проблему

  • Работал для меня в Microsoft Visual Studio 2013 в разделе: Файл> Закрыть решение, затем файл> Открыть решение (должно быть предварительно загружено в той же папке, в которой оно было). Точки останова мгновенно изменились с желтого на красный. Так что спасибо.

Я знаю, что опаздываю на много лет, но я подумал, что сделал что-то не так, и выполнил вышеуказанные шаги, после чего понял, что по ошибке установил конфигурацию решения на «Выпустить» 🙂

  • 1 Могу ли я проголосовать 10 тысяч раз? Хуже всего то, что я думаю, что искал это в Google уже 10 раз, и каждый раз — одна и та же глупая ошибка. Может быть, Microsoft сможет намекнуть на это пользователю?

У меня была аналогичная проблема, и я сделал следующее: Отладка => Параметры => Общие => Снимите флажок «Включить только мой код». У меня это сработало ..

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

Инструмент -> Параметры -> Отладка -> Общие -> (снимите отметку) «Требовать, чтобы исходные файлы точно соответствовали исходной версии»

Источник

Оцените статью