Точка останова не бьется - PullRequest
1 голос
/ 17 мая 2011

Я перенес приложение из VC6 в VS 2008. Я перестроил приложение в сборке выпуска. Файл Pdb доступен в папке, где находится exe. Но когда я загружаю приложение и ставлю точку останова, я получаю следующее сообщение

"Точка останова в настоящий момент не будет достигнута. Для этого документа не было загружено никаких символов"

В чем причина проблемы?

Ответы [ 4 ]

2 голосов
/ 17 мая 2011

Отладчику не удалось найти ни приложение, ни PDB.

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

'hacks_vs10.exe': загружен 'C: \ Users \ john \ Documents \ Visual Studio 2010 \ Projects \ hacks_vs10 \ x64 \ Debug \hacks_vs10.exe ', Символы загружены.

Когда PDB не найден, вместо слова «Символы загружены» написано:

Не удается найти или открыть файл PDB

Убедитесь, что вы сначала запускаете правильную версию своего приложения (проверьте путь выполнения), а затем убедитесь, что PDB находится в этом каталоге.Вы можете изменить место создания PDB, настроив «Проект> Свойства ...> Компоновщик> Создать файл базы данных программы»

1 голос
/ 17 мая 2011

Отладчику не удалось найти код, связанный с исходным местоположением, в котором вы поставили точку останова.

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

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

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

0 голосов
/ 26 февраля 2013

Я только что решил похожую проблему

  • Я снова сослался на все свои библиотеки DLL
  • пошел в (Инструменты-> Параметры, "Проекты и решения", "Построить и запустить") и установите для параметра" При запуске, когда проекты устарели "значение" Запрашивать сборку "

Я не уверен, какие из них устранили проблему, но проблема возникла!

0 голосов
/ 17 мая 2011

Упомянутый вами файл PDB, вероятно, не связан со сборкой релиза,

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

Таким образом, вы можете устанавливать точки останова только на известных точках входа DLL (возможно, через представление списка модулей - прошло много времени с тех пор, как я интенсивно использовал Visual Studio) или непосредственно на инструкциях по сборке.

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

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