Как исправить ошибку «В настоящий момент точка останова не будет достигнута. Для этого документа не было загружено никаких символов». предупреждение? - PullRequest
1357 голосов
/ 28 января 2010

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

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

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

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


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

Ответы [ 94 ]

967 голосов
/ 28 января 2010

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

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

332 голосов
/ 04 сентября 2012

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

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

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

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

258 голосов
/ 28 января 2010

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

.

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

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

211 голосов
/ 30 декабря 2011

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

143 голосов
/ 11 июля 2012

Перекрестная публикация этого исправления от Ганса К , который я нашел в аналогичной теме >> ЗДЕСЬ << </a>:

Щелкните правой кнопкой мыши по решению -> Свойства

Смотрите в Общие свойства -> Запуск проекта

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

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

56 голосов
/ 04 декабря 2014

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

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

enter image description here

А в проекте Свойства> Сборка:

enter image description here

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

enter image description here

enter image description here

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

enter image description here

41 голосов
/ 30 июня 2014

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

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

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

Fixed Debugging Error

41 голосов
/ 29 октября 2014

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

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

Решение?

  1. Просмотр C:\Users\<YOUR USER>\AppData\Local\Temp\Temporary ASP.NET Files\vs
  2. Удалить все в этом каталоге!
36 голосов
/ 11 сентября 2013

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

Showing where to find the setting

34 голосов
/ 15 мая 2013

Иногда, даже несмотря на то, что выдает эту ошибку, breakpoint все равно получает удар, поэтому просто игнорируйте ошибку. Это случается довольно часто в Views из MVC web app.

...