![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Designtime и Runtime пакеты [D6, Win2k]
klyonov © (2004-12-12 20:23:00)В общем, ситуация:
есть пакет (вообще даже 2: designtime и runtime), разработанный и работающий без проблем. Теперь хочу добавить в него еще компонентик. Включаю в runtime-пакет модуль с кодом (designtime-пакет уже использует runtime-версию). В модуль с регистрацией (где сидит procedure Register;)прописываю в uses свой модуль с кодом компонента. Прописываю в RegisterComponents свой компонентик. Жму Install. И получаю: "Точка входа в процедуру <имя_процедуры> не найдена в библиотеке DLL <мой_runtime_модуль>". Посмотрел Dependency Walker'ом - процедура в <моем_runtime_модуле> присутствует.
В чем может быть загвоздка?
P. S. Если сделать новые пакеты с этим одним модулем, то все нормально работает.
klyonov (2004-12-13 19:31:00) [1]Буду думать на Update Pack 2. Как только поставил Delphi без него все сразу заработало.
klyonov (2004-12-12 22:23:00) [2]Хотя...
Теперь после каждой перекомпиляции runtime-пакета точка входа опять теряется... Но новым переподключением все снова исправляется. Все-таки интересно, отчего она теряется?..
klyonov (2004-12-12 22:14:00) [3]Оказалось, ситуация исправляется переподключением dcp-файла runtime-пакета в designtime-пакет
klyonov (2004-12-12 21:27:00) [4]Он там и находится :)
Каталоги с кодом тоже лежат по путям поиска.
Он не находит точку входа в процедуру @Dbexport@initialization$qqrv. Модуль DBExport.pas я и добавляю. Там всего 1 компонентик (пока даже "заглушка" - т. е. просто наследник TComponent). Как только я добавляю DBExport в uses (даже не регистрируя компонент в RegisterComponents) - сразу получаю эту вышеописанную бяку. Причем компилируется все без ошибок, а при установке бяка появляется.
Да и притом Dependency Walker'ом эта самая процедура в runtime-пакете обнаруживается под номером 1002.
Вот еще что странно: если сделать новые пакеты и добавить туда только DBExport, все нормально работает.
Если же из старых выкинуть все, кроме DBExport - ни в какую работать не хочет с той же ошибкой.
Юрий Зотов (2004-12-12 20:53:00) [5]Компилируйте run-time пакет в каталог, доступный через Path (самое простое - в каталог Delphi\Projects\Bpl), либо пропишите каталоги с его сырцами в список путей поиска Delphi.