Каковы основные настройки + задачи, чтобы начать отладку в WinDbg? - PullRequest
1 голос
/ 28 января 2011

Процитирую себя из вопроса Существуют ли книги, которые "учат" WinDbg? :

С отладчиком Visual Studio я знаю, где я нахожусьДело в том, что его очень легко и удобно настроить так, чтобы текущая точка останова (исходный код) + разборка + стек вызовов + локальные переменные + ... все имело смысл вместе.Именно в этот момент мне понадобятся некоторые продвинутые команды WinDbg, но я чувствую, что никогда не достигну точки, в которой я достаточно уверен в том, где я на самом деле отлаживаю приложение для запуска каких-либо расширенных команд.1008 * Имея это в виду: учитывая двоичные файлы (или, возможно, файл дампа), каковы первые шаги, которые необходимо выполнить в WinDbg, чтобы получить сеанс отладки, где вы действительно можете проанализировать что-либо?Какие окна?Какие постоянные переменные среды?И т.д.

Ответы [ 2 ]

3 голосов
/ 28 января 2011
0 голосов
/ 28 января 2011

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

Я считаю, что необходимо выполнить следующие настройки, а общие можно сохранить в файле рабочего пространства в WinDbg:

  • 1-й - Установите путь к файлу символов. Это очень важно и в основном должно быть сделано каждый раз, когда вы начинаете. (Вы можете предварительно настроить символы Microsoft, но если вы не используете сервер символов для своих личных символов, вы должны вручную указывать путь к правильному файлу PDBs каждый раз, когда начинаете отлаживать файл дампа.

    Пример такого пути:

    C:\Windows\symbols\dll;SRV*C:\temp\symbols*http://msdl.microsoft.com/download/symbols;C:\my_debbugger\Application_X\Symbols_for_Dump_7

    Первая часть может быть настроена в файле WEW, последняя часть лучше всего добавляется с помощью .symbols+

  • 2-й - мне полезны следующие окна: Командная строка , Процессы и потоки , Стек вызовов , Локальные Часы . Командная строка должна быть самой большой, так как вы проводите там больше всего времени.

  • 3-й - Команда Thread ~ - найдите его в файле справки. Он позволяет вам переключаться между потоками, и, когда на экране видны стек вызовов и местные жители, вы должны начать понимать, «где вы находитесь».

  • 4-й - .ecxr, который показывает контекст исключения, сохраненный в дампе.

...