2014-11-28 3 views
0

Я только начинаю, и мой первый раз, когда я пытаюсь запустить «мир привет», дал мне это.Visual Studio 2013: «Не удается найти или открыть файл PDB»

«Project2.exe» (Win32): загружен «C: \ Users \ Dustin \ Documents \ Visual Studio 2013 \ Projects \ Project2 \ Debug \ Project2.exe». Загружены символы.

«Project2.exe» (Win32): загружен «C: \ Windows \ SysWOW64 \ ntdll.dll». Не удается найти или открыть файл PDB.

«Project2.exe» (Win32): загружен «C: \ Windows \ SysWOW64 \ kernel32.dll». Не удается найти или открыть файл PDB.

«Project2.exe» (Win32): загружен «C: \ Windows \ SysWOW64 \ KernelBase.dll». Не удается найти или открыть файл PDB.

'Project2.exe' (Win32): загружен 'C: \ Program Files \ Bitdefender \ Bitdefender \ active virus control \ Avc3_00261_012 \ avcuf32.dll'. Не удается найти или открыть файл PDB.

«Project2.exe» (Win32): загружен «C: \ Windows \ SysWOW64 \ msvcr120d.dll». Не удается найти или открыть файл PDB.

Программа '[3140] Project2.exe' вышла с кодом 0 (0x0).

Может ли кто-нибудь помочь мне определить, где находятся эти файлы pdb и как это исправить?

спасибо.

+0

Когда у вас есть сборка Debug, файлы pdb должны быть автоматически сгенерированы для двоичной директории Debug. Вы что-то изменили в отношении сборки? –

+1

Сосредоточьтесь на отладке собственного кода, вы не хотите отлаживать свою проверку на вирусы. Для жестких заданий для отладки, таких как сбой внутри одной из DLL операционной системы, вы можете получить PDB с сервера Microsoft. Инструменты + Опции, Отладка, Символы. –

+0

«Я только начинаю». Я сомневаюсь, что это «трудная работа для отладки». –

ответ

1

Можете ли вы проверить, существует ли генератор отладочной информации? Перейдите к свойствам проекта (щелкните правой кнопкой мыши по свойствам)> Свойства конфигурации> Компонент> Отладка. Генерировать информацию об отладке должно быть ДА, а файл должен быть $(OutDir)$(TargetName).pdb.

enter image description here

0

Глядя на результаты, PDB-файлы, которые не загружены являются системы DLL, которые вы на самом деле не нужно отлаживать через я не думаю. Ваши программы PDB был загружен отлично:

'Project2.exe' (Win32): Loaded 'C: \ Users \ Dustin \ Documents \ Visual Studio 2013 \ Projects \ project2 \ Debug \ Project2.exe. Загружены символы.

Нет ничего плохого в отношении других файлов, не имеющих загружаемых pdbs. Я не думаю. Нормально не иметь символов, загруженных для системных файлов

Если вы считаете, что это не так, то, возможно, вы можете указать, какие файлы в списке выше вы ожидаете, чтобы загрузить pdbs? А также то, что вызывает проблема их загрузки.

+0

спасибо, что ответили. Я очистил кеш символов и перезагрузил символы с сервера MS, теперь у меня есть проблема, когда VS пытается сделать что-то с bitdefender. –

+0

Можете ли вы объяснить, почему вы хотите загрузить символы для этого файла? Это антивирусный файл, он, вероятно, не должен быть загружен в процесс VS, и вы почти наверняка не сможете получить отладочные файлы для него. Я бы либо сконфигурировал битдефендер, чтобы он не запускался в файлах в каталоге проекта, а просто, просто забыл об этом, его, вероятно, не важно –

+0

Это сообщение может помочь, если вы можете перевести его: http://forum.bitdefender.com/index .php? showtopic = 44389 –

0

Выполните следующие действия:

перейти отлаживать -> Параметры -> Символы -> установить Microsoft сервера символ на

Это должно работать точно для вас ..

Не стесняйтесь спрашивать если у вас все еще есть вопросы.

2

* .pdb файлы создаются для целей отладки при создании библиотечного модуля библиотеки DLL.Они содержат символы и смещения для различных двоичных элементов в DLL.

При запуске сеанса отладки IDE попытается найти файл * .pdb, связанный с каждой DLL, загружаемой во время выполнения. Если он не может найти связанный файл * .pdb (с тем же именем, например kernel.dll & kernel.pdb), он отобразит сообщение выше: «Не удается найти или открыть файл PDB».

Что подразумевается в этом сообщении, так это то, что у вас не будет никакой символической способности отладки для чего-либо, что происходит внутри этой DLL. Загруженная DLL будет работать нормально и не будет затронута.

Файлы pdb для системных библиотек должны быть установлены в вашей системе или могут быть получены из Microsoft. Другие DLL поставщика, которые загружаются по какой-либо причине, скорее всего, не будут поставляться с файлами pdb, поэтому вы должны просто игнорировать это предупреждение.

Файл pdb для чего-то, над которым вы работаете, будет автоматически сгенерирован по умолчанию.

Если вы перейдете в меню VisualStudio TOOLS: Debugging: Symbols есть диалоговое окно для управления местоположениями PDB-файлов и т. Д.

Смежные вопросы