Является ли DbgHelp.dll встроенным в Windows? Могу ли я полагаться на то, что он там?
Я использую класс Jochen Kalmbach StackWalker из CodeProject для создания stacktrace, когда в моей DLL возникает исключение.
Он полагается на DbgHelp.dll
Является ли DbgHelp.dll встроенным в Windows Vista, WS2008, Windows 7?
Я знаю о средствах отладки для Windows от Microsoft, и я знаю, что DbgHelp.dll отправляется в этот пакет. Но я также нашел DbgHelp.dll в% windir%\system32 на моей машине.
Если он не установлен по умолчанию, есть ли способ перераспределить его с помощью отладочных сборников моей DLL?
Ответы
Ответ 1
Microsoft говорит:
"Библиотека DbgHelp реализована DbgHelp.dll. Эта DLL включена в операционную систему.
Обратите внимание, что версия, которая в настоящее время включена в Инструменты отладки для Windows, может быть не той же версией, которая включена в операционную систему.
Ответ 2
Как правило, лучше всего отправить dbghelp.dll с вашим приложением, чтобы гарантировать, что вы получите версию, которую вы ожидаете в любом случае. Я считаю, что он перераспределяется именно по этой причине.
Однако стоит помнить, что библиотека времени выполнения отладки не распространяется. Ваши отладочные сборки все равно должны быть (в версиях VС++) "release".