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

Вниз

DELPHI+CORBA+CALLBACK Самоуничтожение объекта   Найти похожие ветки 

 
ShimA   (2003-12-10 15:16) [0]

Серверная часть написана на Visual C++. Клиентская часть на Delphi.
При вызове метода некого обьекта, серверу передается объект созданный
клиентом.
Для обратной связи сервер должен вызывать методы этого объекта.
Все работает но только до момента выходя из процедуры в которой вызывается
метод. Созданный клиентом для обратной связи объект самоуничтожается и
естественно на сервере при попытке вызвать методы этого объекта возникает
exception.
Ниже привожу код. (Delphi7)

// THi1MsgGetVersionSkeleton = class(CORBA.TCorbaObject,
SOSM_HI1ConsumerInterface_i.Hi1MsgGetVersion)
// THi1MsgGetVersion = class(TInterfacedObject,
SOSM_HI1ConsumerInterface_i.Hi1MsgGetVersion)

var TVerMsg:SOSM_HI1ConsumerInterface_impl.THi1MsgGetVersion;
    VerMsg :SOSM_HI1ConsumerInterface_s.THi1MsgGetVersionSkeleton;
procedure  GetSN;
begin

 TVerMsg:=SOSM_HI1ConsumerInterface_impl.THi1MsgGetVersion.Create;
 VerMsg :=
SOSM_HI1ConsumerInterface_s.THi1MsgGetVersionSkeleton.Create("Hi1MsgGetVersi
onSkeleton", TVerMsg);

 BOA.SetScope(RegistrationScope(0));
 BOA.ObjIsReady(VerMsg as _Object);

 Client.ConsumerInterface.hi1interface.get_version_sn(VerMsg);
end;

Все чудестно работает и сервер может вызывать методы класса  VerMsg до
момента выхода из процедуры "GetSN"
Увелечение ссылок на обьект ни к чему не привело.


 
Cobalt ©   (2004-02-01 00:42) [1]

1) Объявить VerMsg как var?
2) Создать коллекцию для этих объектов?



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

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

Наверх




Память: 0.47 MB
Время: 0.051 c
6-1097632292
tatyana
2004-10-13 05:51
2004.12.26
webbrouser


1-1102806517
kurt
2004-12-12 02:08
2004.12.26
const : TFont


3-1101286698
Tor
2004-11-24 11:58
2004.12.26
Наверное глюки в TADOCommand


3-1101531599
ShotGuN
2004-11-27 07:59
2004.12.26
WrapText в DBGrid


3-1101280714
Nexel
2004-11-24 10:18
2004.12.26
IBX и обновление данных