Здравствуйте.
Здесь кто-нибудь пользуется WinDbg? Скажите, пожалуйста, для каких задач Вы его применяете? Что предпочитаете в большинстве случаев для повседневной разработки -- встроенный в Visual Studio отладчик или WinDbg? В каких ситуациях Вам не хватает возможностей встроенного отладчика, и Вы прибегаете к использованию WinDbg? Что лично Вы видите в нём замечательного и плохого?
Интересуюсь с целью выяснить для себя, стоит ли заморачиваться с изучением данного инструмента.
Заранее благодарю.
1) дампы (особенно с нейтив приложений ) однозначно надо разбирать только в windbg. В студии для этого просто нет инструментов.
2) отладка ядра — это исключительно привилегия windbg ( в новых студиях есть нечто, которое вроде как должно быть отладчикоя ядра, но это аццкое убожество )
3) отладка на тестовых машинах — устнаовить туда windbg довольно просто и быстро + никаких проблем с лицензиями и.т.д.
Отладчик студии имеет для меня только два жирных плюса: интеграция с IDE ( написал, запустил, отладил, исправил и.т.д ) и более-менее неплохая работа с STL. Поэтому я обычно VS использую при написании нового кода ( я идиот и не могу писать сразу правильно и поэтому любой кусочек кода обязательно трассирую), тут VS очень удобна. А когда приходят проблемы из IRL ( дампы, непонятные баги и.т.д.) — тут только windbg. Возможно, у VS есть куча удобствий при отладке managed кода или связки managed-unmanaged — не знаю, никогда на .Net не писал.
Кстати, порекламирую свой прожект:
https://pykd.codeplex.com/ автоматизация windbg питоном
По поводу IRL -- Вы на тестовые машины и машины клиентов поставляете *.pdb-файлы или как? Собираете Release-версию с отладочной информацией? В общем, какой инфой для WinDbg достаточно располагать для того, чтобы комфортно решить какую-нибудь реальную проблему?