У меня есть приложение VCL Forms, которое включает ссылку на созданный мной файл BPL. Я добавил имя модуля компонента фрейма из BPL в раздел uses главного окна приложения VCL. Приложение создается нормально, но когда я его запускаю, оно умирает, не дойдя до первой строки «Application.Initialize» в файле проекта. Если я закомментирую единицу фрейма из предложения uses, приложение запускается и работает нормально.
Что могло вызвать фатальную ошибку при запуске приложения?
Я предполагаю, что возникла проблема с загрузкой файла BPL при запуске, но мне не удается найти ее. Спасибо.
Подробнее ниже ... Приложение VCL находится в XE5, и я пытаюсь преобразовать его в BPL. Все приложение находится в одном элементе управления TFrame, в котором находится множество других кнопок и фреймов, которые предоставляют доступ ко всем базовым функциям приложения. Этот «главный фрейм» затем помещается в основную форму приложения, которая пуста, за исключением нескольких пунктов меню. Исходное приложение работает нормально.
Я создал новый проект BPL и добавил этот компонент «основной фрейм», пытаясь создать пакет BPL, который, по сути, был всем моим приложением, и который можно было бы использовать для обычного автономного exe-приложения, как раньше, или добавить в модуль плагина RemObjects Hydra и, в конечном итоге, быть встроенным в приложение C #. Проект BPL с единственным компонентом "основной фрейм" строится нормально, без ошибок.
Затем я создал новое приложение VCL Forms с единственной пустой основной формой и установил для проекта «Параметры-> Пакеты-> Пакеты времени выполнения», чтобы включить мой новый BPL, и установил флажок «Связать с пакетами времени выполнения» вариант. Я добавил модуль "основного фрейма" в раздел uses основной формы, и все строится без ошибок.
Проблема: когда я запускаю приложение из XE5, кажется, что оно запускается как обычно, но умирает, не дойдя до самой первой строки кода «Application.Initialize;» в файле проекта. Обратите внимание, что я еще не написал никакого кода для создания экземпляра «основного фрейма», размещенного в BPL. Я только добавил его модуль в раздел uses. Сообщения об ошибках не отображаются, и ничего не отправляется в окна сборки или вывода в XE5. Если я закомментирую модуль «основного фрейма» из предложения uses, приложение будет работать нормально и будет показано пустое главное окно.
Примечание. Приложение использует JVcl, NativeXml, TsiLang, ZipForge и FastReports.