![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как загрузить *.bpl и получить с него классы через GetClass [D7, Win2k, WinXP]
incms © (2006-10-24 14:05:00)Загружаю пакет через LoadPackage и делаю GetClass. Но GetClass возвращае nil.
Для каждого класса из пакета делаю RegisterClass в секции initialization.
Если в свойствах проекта ставлю галочку Build with runtime packages, то все работает. Но тогда мой проект компилится без пакетов, что мне не нужно.
DrPass (2006-10-24 16:25:00) [21]
> Игорь Шевченко © (24.10.06 16:22) [4]
Один - статически скомпонованный с программой, другой - в rtl*.bpl, которая загрузится в адресное пространство приложения первым же пакетом
DrPass (2006-10-24 16:23:00) [22]
> А заставить прогу использовать для библиотеки уже имеющийся
> экземпляр RTL можно ?
В том-то и дело, что никак. Пакет ведь просто импортирует функции у известных ему библиотек. В проге есть такие же функции, статически с ней скомпонованные, но скомпилированному отдельно от нее пакету они, само собой, недоступны.
А что тебе мешает запихать в дистрибутив программы дополнительные файлы?
Игорь Шевченко (2006-10-24 16:22:00) [23]
> А если не поставишь, у загружаемых тобой пакетов будет свой
> экземпляр RTL
Это как ?
incms (2006-10-24 15:45:00) [24]DrPass
А заставить прогу использовать для библиотеки уже имеющийся экземпляр RTL можно ?
Прога по сама должна работать без всяких доп файлов.
Нужно ехать с шашечками! :)
DrPass (2006-10-24 14:27:00) [25]Забыл добавить, если ты загружаешь пакет через LoadPackage, тебе все равно придется тянуть с ним всякие rtl*.bpl/vcl*.bpl, т.к. он-то их использует. Так что в этом случае какого-либо смысла статически компоновать RTL с приложением нет.
DrPass (2006-10-24 14:18:00) [26]
> Если в свойствах проекта ставлю галочку Build with runtime
> packages, то все работает
А если не поставишь, у загружаемых тобой пакетов будет свой экземпляр RTL, и вызываемая в них RegisterClass соответственно чихать хотела на твое приложение. Так что выбирай, тебе шашечки или ехать