Загрузка файла дампа;VS не находит мой исходный код - PullRequest
4 голосов
/ 09 августа 2011

Я занимаюсь разработкой приложения .NET 4.0 в VS 2010.

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

Вот что я сделал:

  • В Options -> Debugging -> Symbols я добавил директорию сборки моего приложения, которая содержит pdbs.
  • Запустил приложение в отладчике VS. Выбранный Debug -> Break All.
  • Выбранный Debug -> Save dump as
  • Пошел в дамп файл в проводнике Windows и открыл его. Это открыло новый экземпляр VS.
  • Я нажал «Отладка со смешанным». Это открыло новую вкладку с надписью "There is no source code available for the current location.

Я попытался выяснить, почему VS не загружал мои pdbs:

  • Открыт Debug -> Windows -> Modules
  • В столбце Symbol Status для MyApp.exe указано «Символы загружены».
  • Для MyApp.vshost.exe было сказано: «Не удается найти или найти файл PDB».
  • Щелкните правой кнопкой мыши на MyApp.exe, выберите «Информация о загрузке символа». Там написано: «MyApp.pdb: символы загружены».
  • Сделал то же самое для MyApp.vshost.exe. vshost32.pdb: Не удается найти или открыть файл PDB. . (обратите внимание, что он ищет файл с именем vshost32.pdb, а не MyApp.vshost.pdb, по некоторым причинам)

Итак, есть идеи?

1 Ответ

4 голосов
/ 09 августа 2011

Решил проблему.VS смотрел на самый нижний метод в стеке вызовов, который был системным методом где-то в ntdll.dll.Естественно, источника для этого не было.Мне пришлось щелкнуть свой собственный метод в окне Call Stack, чтобы перейти к своему собственному коду, для которого источник был доступен.

...