Проблема с дочерней формой в DLL
Madmech
Дата: 09.06.2009 15:49:30
Я создаю DLL, к ней подключаю главную форму (MainForm) и дочернюю форму (ChildForm), но когда пытаюсь обратиться в обработчике OnShow главной формы к одному из компонентов, лежащих в дочерней форме, компилятор выдает ошибку. Точнее компилятор выдает ошибку, когда я загружаю эту библиотеку в запускающем приложении. В чем дело? Исходники по необходимости приложу.
FlyD
Дата: 09.06.2009 16:29:11
Madmech |
компилятор выдает ошибку |
И даже текст ошибки какой то пишет?
Madmech
Дата: 09.06.2009 19:18:59
FlyD |
Madmech | компилятор выдает ошибку | И даже текст ошибки какой то пишет? |
Access violation at 00BD5AC1 in module 'lib.dll'. Read at address 000002F8
JohnS
Дата: 09.06.2009 20:06:05
Хмм. А форма в DLL это наверно адски круто
Madmech
Дата: 09.06.2009 20:33:34
JohnS |
Хмм. А форма в DLL это наверно адски круто |
На всякий случай: я только-только начал изучать создание DLL и внедрение туда форм, так что Ваш сарказм неуместен.
Соколинский Борис
Дата: 09.06.2009 21:02:33
Madmech,
Так все-таки, в какой момент ошибка возникает и на каком операторе?
Run-time пакеты используются?
_Vasilisk_
Дата: 09.06.2009 22:55:09
И опять - uses ShareMem.
С уважением, Vasilisk
FlyD
Дата: 09.06.2009 23:05:50
1. ShareMem должен быть прописан первым в разделе uses dpr-файлов
и основного приложения, и dll.
2. Убрать прямые обращения к компонентам формы, находящейся в dll. Строй
бизнес-логику обращений через экспортируемые функции.
3. Рассмотреть возможность/необходимость использования Runtime packages
вместо dll.
Madmech
Дата: 10.06.2009 13:10:54
Все, проблема решена! Всем спасибо, все свободны.
OracleLover
Дата: 10.06.2009 13:13:34
Madmech |
Все, проблема решена! Всем спасибо, все свободны. |
Как?