3
有一個代碼:的Delphi CreateOleObject事件
var
myobject: OleVariant;
begin
myobject := CreateOleObject('SomeNamespace.SomeClass');
end;
此COM對象具有事件(例如的OnClick)。我應該如何在不導入TLB的情況下連接到這些事件?
有一個代碼:的Delphi CreateOleObject事件
var
myobject: OleVariant;
begin
myobject := CreateOleObject('SomeNamespace.SomeClass');
end;
此COM對象具有事件(例如的OnClick)。我應該如何在不導入TLB的情況下連接到這些事件?
你正在使用COM遲綁定,所以你需要編寫大量的代碼來處理事件。如果你知道COM,這個任務並不難,基本上你需要按照這些步驟。
TInterfacedObject
派生的新對象(類)實現 IDispatch
IConnectionpointContainer
)和所需的連接點的Invoke()
功能。IConnectionPointContainer.FindConnectionPoint
IConnectionPoint.Advise()
的IDispatch
你可以發現這個實現的例子對這些鏈接
嘗試這些鏈接有關COM更多信息,後期綁定和事件
一般來說,與experts-exchange.com的鏈接並不十分有用...... – 2010-09-04 21:21:43
dreas並沒有談論專家交流的答案質量,@Rruz。專家交流鏈接並不實用,因爲除非您是會員,否則您通過Google抵達該網站,該頁面不會顯示任何答案的文字。 – 2010-09-04 22:02:39
ok @Rob,我沒有意識到這一點。 – RRUZ 2010-09-04 22:07:58