DBGHelp.dll вызывает загрузку msvcrt.dll в отладочной версии
Мое приложение компилируется с 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 ответ
В чем проблема с загрузкой как MSVCRT.LIB, так и MSVCRTD.DLL? В любом случае это только в вашей сборке Debug, я бы подумал, как вы заметили в этом вопросе.
Я не думаю, что вы действительно хотите начать возиться с библиотеками Debug OS - вот что такое DBGHELP.DLL - это не более желательно, чем, например, загружать в приложение Debug Kernel32.dll.