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

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

Проблемы с абстрактными методами [D7, Win2k]


Страницы:   1 2

NewDelpher ©   (2004-10-05 14:37:00) 

есть у меня класс

TClassAb = class
public
 procedure my_method; dynamic; abstract;
end;

есть его наследник:

TMyClass = class(TClassAb)
public
 procedure my_method; override;
end;


есть процедура:

procedure test(cl: TClassAb);
begin
 cl.my_method;
end;


и объект:

var MyClass: TMyClass


Когда делаю вызов в модуле test(MyClass) всё замечательно работает, но  стоит только поместить эту procedure testв DLL-шку происходит AV при обращении к ней... Что я неправильно делаю?


KSergey   (2004-10-05 15:06:00) [21]

Вообще экземпляры объектов, конечно, лучше бы не передавать...
К стати, что в этом my_method? Более того, если пустить в отладчике - рубится прямо на вызове или все же внутри метода? Надо бы уточнить...
Ну и, надеюсь. описания классов идентичны для dll и хост-приложения? ;)

> [5] NewDelpher ©   (05.10.04 15:03)
> > Суслик ©   (05.10.04 14:58) [3]
> > sharemem в uses есть?
> нет, а что?

Читаем комментарии к проекту dll, вот что ;)
Хотя пока об этом рано еще говорить, может и не в том дело


NewDelpher   (2004-10-05 15:03:00) [22]


> Суслик ©   (05.10.04 14:58) [3]
> sharemem в uses есть?

нет, а что?


NewDelpher   (2004-10-05 15:02:00) [23]


> KSergey ©   (05.10.04 14:52) [2]
> Думаю ключевые слова "но  стоит только поместить эту procedure
> test в DLL-шку".

вот код из DLL:

lybrary dll_pro;
uses LybraryClass; // это модуль, который абстрактный класс содержит
procedure test(Cl: TClassAb); export;
begin
 Cl.my_method;
end;
exports test name 'Тестовый';
begin
end.
/CODE>
Вроде ничего криминального...


Суслик   (2004-10-05 14:58:00) [24]

sharemem в uses есть?


KSergey   (2004-10-05 14:52:00) [25]

Боюсь проблема совершенно в другом месте, надо подробнее смотреть что там и как.

Уберите все эти иерархии - боюсь, проблема останется. Не там роете, по-моему.


KSergey   (2004-10-05 14:52:00) [26]

Думаю ключевые слова "но  стоит только поместить эту procedure test в DLL-шку".


Страницы:   1 2

Наверх

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