Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Функции обратного вызова и т.ж. [D4, D6]


malkolinge ©   (2003-01-29 13:46:00) 

Почему длл скомпилиная под Д6 не хочет корректно принимать указатели на функцию, класс и т.д от приложения написанного на Д4.

И вообще дайте совет, как правильно передавать экземпляры классов как параметры для функций в ДЛЛ ?

С Уважением Евгений


malkolinge   (2003-01-29 16:05:00) [1]


> REA © (29.01.03 14:43)
> Если передаются классы, то:
> 1) Лучше использовать BPL вместо DLL

Знаю. Но тем не менее ?


Юрий Зотов   (2003-01-29 14:53:00) [2]

> Евгений

Exe и DLL компилируются независимо, каждый имеет свои собственные таблицы и пр. Поэтому один и тот же класс в Exe и DLL - это два разных класса.

Возможно, проблема в этом. Если так, то при использовании BPL вместо DLL она исчезнет.


REA   (2003-01-29 14:43:00) [3]

Если передаются классы, то:
1) Лучше использовать BPL вместо DLL
2) Если все же DLL, использовать ShareMem
3) Описать абстрактный класс дабы не дублировать код.
5) Соблюдать конвенции вызова (cdecl, stdcall, pascal, safecall...)

Все нормально в D6 и D7 передается - ищи в чем проблема.


malkolinge   (2003-01-29 14:01:00) [4]

Как всегда никто ничего советовать не хочет :)


Наверх

Титульная страница Поиск, карта сайта Написать письмо