Вниз
Скачать: CL | DM;

COM сервер и два интерфейса (можно3 )   Найти похожие ветки 

← →
malkolinge ©   (2004-04-05 17:11) [0]

Когда ком объект реализует ДВА интерфейса, QueryInterface для второго дает Nil.

Почему и как бороться ?


← →
Матлабист   (2004-04-05 17:25) [1]

Вот мой код:

type
 I1 = interface
 ["{C86505A6-D299-4386-A90F-60F9A7973CBD}"]
   procedure Test1;
 end;

 I2 = interface
 ["{55FA6144-BACE-4E38-98C1-FF17FB6A23F8}"]
   procedure Test2;
 end;

 TSomeObj = class(TInterfacedObject, I1, I2)
 public
   procedure Test1;
   procedure Test2;
 end;

procedure TSomeObj.Test1;
begin
 ShowMessage("1");
end;

procedure TSomeObj.Test2;
begin
 ShowMessage("2");
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 X1: I1;
 X2: I2;
begin
 X1 := TSomeObj.Create as I1;
 X1.QueryInterface(I2, X2);
 X2.Test2;
end;


А твой?



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.023 c
1-1105446345
Viruz
2005-01-11 15:25
2005.01.23
Exception


1-1105005604
AndreySoft
2005-01-06 13:00
2005.01.23
InputQuery и PasswordChar


9-1097160331
Proger
2004-10-07 18:45
2005.01.23
Радианы и градусы


1-1105023865
Magic_STI
2005-01-06 18:04
2005.01.23
Трабла с обновлением TRichEdit


3-1103534177
vvllaadd
2004-12-20 12:16
2005.01.23
Тип поля задан ALPHA, почему выдается такая ошибка




   Наверх