Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.03;
Скачать: CL | DM;

Вниз

как можно импортировать из DLL объекты?   Найти похожие ветки 

 
Jolik   (2003-02-19 12:05) [0]

т.е. ссылку то можно получить. А что будет потом?


 
Игорь Шевченко ©   (2003-02-19 12:30) [1]

А потом будет Aссess Violation


 
han_malign ©   (2003-02-19 14:33) [2]

Полностью абстрактый интерфейс и обращайся сколько хочешь (если структура объектов (и RTTI) совпадает конечно (Delpfi с BC++, но не с VC)). Статические методы тоже в принципе прокатят, но не всегда и дублирование кода получится...
Обычно еще обвязка делается, чтобы статические методы в нужном контексте выполнялись (в DLL):

unit XMy;
interface
type TXMyObject = class
public
procedure Method1(...);virtual; abstract;
............
end;
end;

unit My;
interface
type TMyObject = class(TXMyObject)
public
procedure Method1(...); override;
............
end;
implementation
procedure TMyObject.Method1(...);
............
end;

Library MyLib;
uses My;
...
function CreateMyObject: TXMyObject;
begin
Result:=TMyObject.Create;//заметь - без X
end;
procedure FreeAndNil(var aObject: TObject);
begin
aObject.Free;aObject:=nil;
end;
end;

program Test;
uses XMy;
function CreateMyObject: T XMyObject;external "MyLib";
procedure FreeAndNil(var aObject: TObject);external "MyLib";
var obj: T XMYObject;
begin
obj:=CreateMyObject;
obj.Method1(...);
FreeAndNil(obj);
end;



Страницы: 1 вся ветка

Текущий архив: 2003.03.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
14-5755
VikOss
2003-02-12 09:59
2003.03.03
Глюк сети


1-5501
[HDD]John
2003-02-19 13:14
2003.03.03
ShowMessage


14-5717
1aArchy
2003-02-13 20:30
2003.03.03
ЗФТШ!!!!


14-5713
IronHawk
2003-01-23 17:04
2003.03.03
Третья официальная ВСТРЕЧА Мастаков в КИЕВЕ!!!


3-5455
mate
2003-02-13 15:43
2003.03.03
Номер записи