Не удалось зарегистрировать .dll в regsvr32 - только в сборке выпуска - PullRequest
1 голос
/ 23 мая 2010

У меня странная проблема при попытке зарегистрировать .dll, которую я создал с помощью regsvr32.

В процессе разработки все прошло нормально, отладочная версия записывается и работает нормально. Теперь я хотел создать версию выпуска, но эта версия больше не регистрируется.

regsvr32 выдает следующую ошибку:

The module "mpegsplitter.dll" failed to load.

Make sure the binary is stored at the specified path or
debug it to check for problems with the binary or
dependent .DLL files.

The specified procedure could not be found.

Некоторые исследования привели меня к исследователю зависимости, который говорит мне об этом

Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.

Он также показывает зависимость от "crtdll.dll", которой нет в версии отладки (представление функций показывает функции soem, которые обычно должны быть в ole32.dll), окрашенное в красный цвет.

Пока все хорошо, я думаю, это как-то связано с тем, что показывает там ходок с зависимостями.

Но куда мне идти отсюда? Как мне это исправить? Буду признателен за любую помощь, которая уже несколько часов занимает меня.

Спасибо!

Ответы [ 3 ]

2 голосов
/ 17 октября 2012

У меня такая же проблема. Когда я сравнил разницу между «Командной строкой» (в свойствах проекта -> компоновщик) в режиме выпуска и отладки, я обнаружил, что параметры «Оптимизация» (в свойствах проекта -> компоновщик) в режиме выпуска были включены во время ионной отладки. не. Включение оптимизации для компоновщика в режиме Release решило проблему

0 голосов
/ 23 мая 2010

Я исправил это. На самом деле это было вызвано порядком некоторых библиотек mingw, которые я включил для ссылки на ffmpeg. Ну что ж, как странно.

0 голосов
/ 23 мая 2010

Возможно ли, что отладочная версия скомпилирована с _ATL_MIN_CRT, а выпускная версия - нет? Вы также можете установить это с помощью свойства проекта Minimize CRT Use in ATL.

...