DBGHelp.dll вызывает загрузку msvcrt.dll в отладочной версии - PullRequest
1 голос
/ 24 октября 2010

Мое приложение компилируется с VC6 sp6, использует DBGHelp.lib для получения информации о стеке. Код одинаков в компиляции отладки и выпуска. Проблема заключается в том, что при выполнении отладочной версии DBGHelp.dll загружает msvcrt.dll (версия выпуска). В любом случае msvcrtd.dll уже загружен моей отладочной ссылкой. Таким образом, я в конечном итоге и msvcrtd.dll, и msvcrt.dll в процессе в отладочной версии. DSP настроен на загрузку библиотек по умолчанию, а msvcrt (d) .lib напрямую не упоминаются. Если я возьму код, который использует DBGHelp.dll, и удалю DBGHelp.lib из списка ссылок dsp, msvcrt.dll не будет загружен.

Как мне это исправить?

Мне нужно иметь только msvcrtd.dll в моем выполнении отладки.

Существует ли специальная версия DBGHelp.dll для отладки (которая будет использовать msvcrtd.dll)?

1 Ответ

0 голосов
/ 24 октября 2010

В чем проблема с загрузкой как MSVCRT.LIB, так и MSVCRTD.DLL? В любом случае это только в вашей сборке Debug, я бы подумал, как вы, похоже, заметили в вопросе.

Не думаю, что вы действительно хотите начать возиться с DLL-файлами Debug OS - вот что такое DBGHELP.DLL - это не более желательно, чем, например, загружать ваше приложение в Debug Kernel32.dll.

...