Я пытаюсь отладить программу, для которой у меня нет исходного кода: explorer.exe
Это собственное приложение Win32 от Microsoft, и символы доступны.
Все, что мне сейчас нужно, это (графический) отладчик, поддерживающий символы.
Были ли написаны какие-либо новые графические отладчики, поддерживающие сервер символов Microsoft, за последние 6 месяцев, о которых я не знаю?
Графический отладчик - это тот, где вы можете увидеть разборку и можете выполнить инструкции Step Into и Stop Over, например:
Delphi
OllyDebug:
IDA Pro
альтернативный текст http://www.hex-rays.com/idapro/linux/remotedebugger2.gif
WinDbg не показывает вам ряд инструкций:
альтернативный текст http://windowsitpro.com/Files/11/21217/Figure_01.gif
Ага ... Не совсем уверен, насколько OllyDbg оценивается как "графический", но WinDbg этого не делает.
WinDbg на самом деле делает показывает вам списки инструкций - вам просто нужно найти нужные представления и окна в его меню. Он даже может выполнять отладку на уровне исходного кода, как Visual Studio; просто убедитесь, что ваши PDB заполнены и вы указываете WinDbg, где находится ваш исходный код.





Что ж, по сравнению с cdb WinDbg - графический отладчик, хотя и не самый дружелюбный в мире!
Visual Studio Pro, безусловно, является графическим отладчиком и поддерживает сервер символов, поэтому вы можете попробовать Visual Studio C++ Express.
WinDBG - это просто! Возможно, он имел в виду отладчик с кнопками, которые нужно нажимать, а не вводить команды.
Вроде, как бы, что-то вроде. мне нравится видеть инструкции по сборке; где я могу войти и перешагнуть через них.
Ознакомьтесь с IDA Pro: http://www.hex-rays.com/idapro/
Это и дизассемблер, и отладчик, и он поддерживает символы.
Дополнение Visual Studio C++ Экспресс поддерживает как управляемую (.Net), так и собственную (Win32) отладку. Он поддерживает сервер символов.
Я не могу понять, как заставить его отлаживать приложение Win32 или заставить его использовать символы.
См. Связанный вопрос: stackoverflow.com/questions/360912/…, в котором подробно описаны попытки отладки с помощью Visual Studio.
Если под «Графическим отладчиком» вы имеете в виду, что он покажет вам ассемблерный код, то WinDBG - это то, что вы действительно ищете. Вам просто нужно знать, где найти то, что вы ищете:
Если вы откроете меню Окно, вы можете выбрать Автоматически открывать разборку. Это приведет к открытию Разборка для определенного кадра стека, когда вы щелкнете по нему в окне Стек вызовов.
По общему признанию, WinDBG не имеет всех тех красивых цветов, которые есть у других, но он чрезвычайно функциональный.
Windbg наверняка сможет удовлетворить вашу цель, ознакомившись с инструкциями по сборке.
Откройте окно разборки с помощью View-> Disassembly.
Примечание: Windbg имеет 2 режима «режим источника включен» и «режим источника выключен», поэтому по умолчанию вы можете работать только с функциями, для которых у вас есть исходный код. Ищите значки на панели инструментов:
Или установите с помощью команд windbg l+t или l-t.
В вашем примере показано, что вы используете сервер символов, но для других одна отправная точка - это общедоступные серверы символов MS и Firefox:
srv*c:\Symbols*http://msdl.microsoft.com/download/symbols;srv*c:\Symbols*http://symbols.mozilla.org/firefox
Не могли бы вы пояснить, что вы подразумеваете под «графическим отладчиком»? Например, хотя windbg, похоже, сильно управляется командами, он также имеет альтернативные «визуальные» интерфейсы для большей части своих функций.