Загрузка рисунков из ресурса пакета
Проект успешно скомпилирован и зарегистрирован в Builder'е. Создаю новый проект, кладу свой объект на форму. В дизайнере он отображается правильно - со всеми моими рисунками.
Запускаю программу. Компиляция проходит без ошибок, но программа выдаёт исключение "Resourse ТАКОЙ-ТО not found" в конструкторе формы.
Загрузка рисунков в пакете выполняется функцией LoadFromResourceName((int) HInstance, ИМЯ_РИСУНКА);
В файле пакета (.bpl), ресурсы с требуемыми именами существуют.
Вопрос, почему в режиме разработки ресурсы доступны, а при работе - нет? И как это исправить?
То ли это бага билдера, то ли наоборот - фича :).
Попробуй подключить res-файл к своему проекту, который юзает пакет
Вероятно проблема с глобальной переменной HInstance, которая в пакете (при разработке) содержит дескриптор bpl, а при запуске приложения - дескриптор самого приложения...
Но это предположение, не проверял
Цитата: el scorpio
...
Загрузка рисунков в пакете выполняется функцией LoadFromResourceName((int) HInstance, ИМЯ_РИСУНКА);
Вопрос, почему в режиме разработки ресурсы доступны, а при работе - нет?
Чей здесь инстанс - HInstance? А Ресурс куда поклал?
Цитата: el scorpio
И как это исправить?
LoadFromResourceName(FindClassHInstance(__classid(TEL_ScorpioControl)),
"ИМЯ_РИСУНКА");
Цитата: H010d Freeze
Только что посетила мысль...
Вероятно проблема с глобальной переменной HInstance, которая в пакете (при разработке) содержит дескриптор bpl, а при запуске приложения - дескриптор самого приложения...
Но это предположение, не проверял
Вероятно проблема с глобальной переменной HInstance, которая в пакете (при разработке) содержит дескриптор bpl, а при запуске приложения - дескриптор самого приложения...
Но это предположение, не проверял
Ну как ты быстро пишешь. Я одно сообщение набрать успел, а ты два:)
LoadFromResourceName(HInstance,"FACTORY");
И всё работает.
Но чаще использую LoadFromResouerceID