Как использовать Windows Symbol Packages с Visual Studio 2008? - PullRequest
3 голосов
/ 17 февраля 2009

В Microsoft я могу загрузить Windows Symbol Packages для XP, Vista, Server и даже Windows 7 .

Моя проблема: как мне использовать эти символы в Visual Studio? Где в VS 2008 я могу добавить загруженные и извлеченные символы, чтобы я мог отлаживать в самой Windows?

Чего я хочу добиться: я хочу отладить _beginthreadex / endthreadex, чтобы увидеть почему / где какой-то код теряет дескрипторы .

Мне известно, что я могу настроить Visual Studio 2008 для загрузки исходных файлов , но похоже, что это только для источников .net Framework?

Ответы [ 2 ]

5 голосов
/ 17 февраля 2009

Пакеты символов используются только для той версии Windows, которую вы сейчас используете, - они устанавливаются в C: \ Windows \ Symbols, и вы можете установить только один пакет за раз.

Вместо этого используйте Symbol Server.

Сервер символов

В Visual Studio перейдите по адресу: Tools / Options / Debugging / Symbols. Добавьте "http://msdl.microsoft.com/download/symbols" в список Symbol file (.pdb) locations. Вам нужно будет ввести каталог кэша в Cache symbols from symbol servers to this directory:. Я использую C: \ WebSymbols. У вас будет много места (у меня есть около 600 МБ в мой), хотя вы можете периодически очищать каталог.

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

Кроме того, вы можете установить это глобально для всех отладчиков Windows, установив для переменной среды _NT_SYMBOL_PATH что-то вроде этого: SRV*C:\WebSymbols*http://msdl.microsoft.com/download/symbols.

Вы также можете (как часть процесса сборки) собрать свои собственные файлы .PDB, используя SYMSTORE.EXE (из Средства отладки для Windows ), и добавить этот каталог в этот список.

Исходный сервер

Файлы .PDB могут иметь (необязательно) ссылку на исходные файлы, из которых они были созданы. Как вы упоминаете, вы можете использовать эту функцию для загрузки исходных файлов .NET, но она также работает с исходными файлами C ++. Мы аннотируем наши файлы .PDB с помощью пути SVN и ревизии исходного исходного файла. Когда мы используем «Перейти к исходному коду», Visual Studio использует SVN для загрузки точного исходного кода, с помощью которого был создан EXE-файл. Это действительно круто.

Чтобы комментировать файлы PDB, вам потребуются инструменты из каталога srcsrv в инструментах отладки для Windows.

0 голосов
/ 17 февраля 2009

Если вы хотите «отладить в самой Windows», вы, вероятно, захотите иметь возможность подключаться к уже запущенным процессам, чего не могут делать выпуски Express MSVC ++. Поэтому, если вы используете Express Edition (или даже не используете), я бы порекомендовал загрузить Средства отладки для Windows . Это обеспечивает отладчики windbg и cdb, которые гораздо менее дружественны, чем отладчик, включенный в MSVC ++, но более мощны.

...