Является ли DbgHelp.dll встроенным в Windows? Могу ли я рассчитывать на то, что он там? - PullRequest
11 голосов
/ 25 октября 2009

Я использую класс StackWalker Йохена Калмбаха из CodeProject , чтобы создать трассировку стека при возникновении исключения в моей DLL.

Это зависит от DbgHelp.dll

Является ли DbgHelp.dll встроенным в Windows Vista, WS2008, Windows 7?

Я знаю о средствах отладки для Windows от Microsoft, и я знаю, что DbgHelp.dll поставляется в этом пакете. Но я также нашел DbgHelp.dll в% windir% \ system32 на моей машине.


Если он не установлен по умолчанию, есть ли способ для его распространения с отладочными сборками моей DLL?

Ответы [ 2 ]

10 голосов
/ 25 октября 2009

Microsoft говорит :

"Библиотека DbgHelp реализована с помощью DbgHelp.dll. Эта библиотека DLL включена в операционную систему."

Обратите внимание, что версия, включенная в настоящее время в Средства отладки для Windows, может отличаться от версии, включенной в операционную систему.

2 голосов
/ 25 октября 2009

Как правило, лучше всего поставлять dbghelp.dll вместе с приложением, чтобы в любом случае получить ожидаемую версию. Я считаю, что по этой причине его можно распространять.

Однако стоит помнить, что библиотека времени отладки не распространяется. Ваши отладочные сборки должны быть (в терминах VC ++) "релизными" сборками.

...