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

Вниз

управление через OLE   Найти похожие ветки 

 
yanker   (2006-01-09 14:47) [0]

Есть сервис, необходимо управлять им. Далаю сервис сервером OLE и хочу получить значения переменных управления из сервиса. Однако ничего не возвращается. Почитал инфы, оказывается при создании OLE объекта ф-ией CreateOleObject создается экземпляр, который не может получить доступ к переменным и функциям приложения. Как быть?


 
GanibalLector ©   (2006-01-09 18:07) [1]

Дык, создайте нужные Вам свойства и методы и свяжите их с переменными приложения.


 
yanker   (2006-01-10 10:59) [2]

дело в том, что сервер у меня является еще и corba сервером и при создании объекта для управления у меня запускается новая копия сервиса


 
yanker   (2006-01-10 11:51) [3]

Текст файла TLB

IRControl = interface(IDispatch)
   ["{41C544FA-ACC0-4A65-83E2-78A5AE16731B}"]
   function GetPort: TDateTime; safecall;
 end;

// *********************************************************************//
// DispIntf:  IRControlDisp
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {41C544FA-ACC0-4A65-83E2-78A5AE16731B}
// *********************************************************************//
 IRControlDisp = dispinterface
   ["{41C544FA-ACC0-4A65-83E2-78A5AE16731B}"]
   function GetPort: TDateTime; dispid 1;
 end;

 TRControlStub = class(TCorbaDispatchStub, IRControl)
 public
   function GetPort: TDateTime; safecall;
 end;

 TRControlSkeleton = class(TCorbaSkeleton)
 private
   FIntf: IRControl;
 public
   constructor Create(const InstanceName: string; const Impl: IUnknown); override;
   procedure GetImplementation(out Impl: IUnknown); override; stdcall;
 published
   procedure GetPort(const InBuf: IMarshalInBuffer; Cookie: Pointer);
 end;

И в initialization
CorbaStubManager.RegisterStub(IRControl, TRControlStub);
 CorbaInterfaceIDManager.RegisterInterface(IRControl, "IDL:mapper_server/IRControl:1.0");
 CorbaSkeletonManager.RegisterSkeleton(IRControl, TRControlSkeleton);

Хотя когда создаешь ole automation сервер в отдельном приложении, ничего такого нет?



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

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

Наверх




Память: 0.47 MB
Время: 0.039 c
2-1186590323
>>DEATH<<
2007-08-08 20:25
2007.09.02
Помогите с SelAttributes


11-1168848047
MTsv DN
2007-01-15 11:00
2007.09.02
TVBeginEdit и TVEndEdit


15-1186252040
ferr
2007-08-04 22:27
2007.09.02
Подкасты.


4-1173790118
cherrex
2007-03-13 15:48
2007.09.02
Show Window Content With Dragging Effect Enabled


4-1173850792
paradox01
2007-03-14 08:39
2007.09.02
Контур для непрямоугольного региона