«Ошибка загрузки DLL» при компиляции DLL в VB6 - PullRequest
6 голосов
/ 20 декабря 2011

У меня есть Visual Basic 6 «.dll проект», который использует ссылки, и когда нажата опция «File-> Make dll», он должен сгенерировать файл dll. Хорошо, когда я нажимаю «File-> Make dll», я получаю ошибку «Ошибка при загрузке DLL».

Как узнать, какие ссылки отсутствуют?

Ответы [ 6 ]

2 голосов
/ 21 декабря 2011

Я видел, что эта ошибка возникает, когда указанные компоненты перекомпилированы без совместимости, но предыдущие версии dll не предварительно незарегистрированы, поэтому ключи реестра для библиотек типов не удаляются, и эти фиктивные реестрыЗаписи указывают на новые библиотеки.

Обычно я имею дело с этим с помощью инструмента очистки внутреннего реестра, который может удалить регистрацию typelibs / clsid / interfaces на основе расположения диска typelib.Вы можете попробовать переместить физические файлы указанных проектов в другое место на диске и regsvr32 их там, вручную удалить ссылки из файла проекта, перезапустить IDE и заново открыть проект, наконец, добавить ссылки и проверить это местоположение DLL в диалоговых точках добавления ссылок.в расположение новых файлов.

2 голосов
/ 20 декабря 2011

В рамках проекта -> Рекомендации.

Ищите слово MISSING: перед dll's, которых там нет.

1 голос
/ 20 декабря 2011

Если у вас нет ссылок MISSING, попробуйте скомпилировать библиотеки проекта, используя совместимость проекта вместо двоичной. VB6 можно спутать с двоичной совместимостью, когда в иерархии библиотек есть ссылки на несколько библиотек.

0 голосов
/ 11 июля 2019

В 2019 году такая же ошибка произошла на моем старом ноутбуке xp в проекте, переносимом из Excel VBA в VB6. Я прочитал все приведенные выше ответы и не смог решить проблему (для начала отсутствуют отсутствующие ссылки, и в расположениях библиотек по умолчанию сделано не так много изменений). То, что на самом деле решило мою проблему, довольно странно. Я дважды щелкнул и открыл все формы и модули Designer (по сути, загружая их компоненты в память) и вуаля, ошибка исчезла сама по себе. Я попытался воспроизвести ошибку, и она возвращается, когда я снова запускаю IDE. Наконец, выяснилось, что существует одна такая громоздкая пользовательская форма с большим контролем - виновник. Я не мог понять, какой именно элемент управления вызывает ошибку dll, но на данный момент работа выполнена.

0 голосов
/ 28 декабря 2016

В Project -> References дважды проверьте расположение всех ваших ссылок. Ваша ссылка может иметь правильное имя, но может указывать на другой экземпляр той же DLL.

0 голосов
/ 20 декабря 2011

Это было какое-то время, но из верхнего меню - "Проект" -> "Ссылки", а недостающие обычно выделяются или говорят, что рядом с ними нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...