Короткий и лаконичный:Debugging (Win): DIA против DBGHELP
Каковы реальные различия между DIA (Debug Interface Access) и библиотеки DBGHELP? Я знаю, что DIA основана на COM и, кажется, очень мощна (а также может использоваться с управляемыми и неуправляемыми процессами), тогда как DBGHELP, кажется, очень удобен в использовании, но предлагает меньше возможностей.
Может ли кто-нибудь объяснить, где эти два имеют свои отличия и что можно сделать с одним, но не с другим? Я действительно борюсь с поиском какой-то полная неоспоримой информации в интернете :(
Извините, если это кажется скучным вопрос, и благодаря любым ответам у вас есть для меня! :)
С уважением PuerNoctis
Спасибо за ссылки! Смешная вещь: я уже несколько минут назад заглянул в ваши статьи;) Еще один вопрос: правда ли, что DIA может использоваться для отладки неуправляемых, а также управляемых приложений? – PuerNoctis
Добро пожаловать! Как уже упоминалось, DIA основана на COM, что означает неуправляемый код. Конечно, вы можете использовать мосты для использования DIA из управляемого приложения.Поскольку управляемый код включает полный исходный код и не использует символы PDB, я не думаю, что он подходит для отладки управляемых приложений. – mox
О, ладно. Я также нашел «CLR Debugging API», который также предоставляет COM-интерфейсы для отладки управляемого приложения (вокруг интерфейсов ICorDebug). Еще раз спасибо за ваш опыт! Теперь я знаю, как DIA и DBGHELP коррелируют :) – PuerNoctis