Вспомогательный объект браузера не может загрузить модуль?

Я создаю вспомогательный объект браузера на C++, и предыдущие тесты были успешными на нескольких машинах. Однако конечный продукт работает только на том компьютере, на котором он был разработан. Файл .dll тестировался на компьютерах с похожими настройками, такими как та же операционная система, и единственное, что изменилось, чтобы сделать заполненный BHO ошибочным, — это добавление некоторых библиотек. Я включил ниже дамп зависимостей предыдущей успешной сборки BHO и новой ошибочной на случай, если это может помочь, буду очень признателен за все. Спасибо!

bho.dll (предыдущая успешная сборка)

Тип файла: DLL

Изображение имеет следующие зависимости:

SHLWAPI.dll KERNERL32.dll OLEAUT32.dll

Сводка 4000 .data 1000 .idata 12000 .rdata 4000 .reloc 1000 .rsrc 53000 .text 27000 .textbss

BHOinCPP.dll (выполненная ошибочная сборка)

Тип файла: DLL

Изображение имеет следующие зависимости:

KERNEL32.dll USER32.dll ADVAPI32.dll OLEAUT32.dll MSVCR100D.dll

Резюме

1000 .data 1000 .idata 4000 .rdata 1000 .reloc 1000 .rsrc 9000 .text 10000 .textbss


person user515751    schedule 06.06.2011    source источник


Ответы (1)


Бьюсь об заклад, это вызывает проблему: MSVCR100D.dll. Это отладочная версия среды выполнения C. Что вы хотите сделать, так это статически связать CRT с помощью параметра /MT. Подробнее здесь: http://msdn.microsoft.com/en-us/library/2kzt1wy3.aspx

person Nemanja Trifunovic    schedule 06.06.2011
comment
Я обнаружил, что существует некий распространяемый компонент, от которого зависит корректная работа BHO. Статическое связывание CRT сделало свое дело. Спасибо - person user515751; 15.06.2011