现在有一个由VC开发的ATL/COM服务(EXE形式),该服务提供了一个方法及一个事件。
现使用delphi来调用该服务,方法就已经可以正常使用了,但是不知道怎样响应事件。使用VB及VC的调用都已经可以正常使用该服务的方法及事件了,但本人初学delphi,还不知道怎样响应事件,请各高手指点,最好可以提供代码,谢谢。服务提供的方法及事件如下(VC中的定义):
方法:
SetData(LONG iData);事件:
ReceiveData(LONG iData);
现使用delphi来调用该服务,方法就已经可以正常使用了,但是不知道怎样响应事件。使用VB及VC的调用都已经可以正常使用该服务的方法及事件了,但本人初学delphi,还不知道怎样响应事件,请各高手指点,最好可以提供代码,谢谢。服务提供的方法及事件如下(VC中的定义):
方法:
SetData(LONG iData);事件:
ReceiveData(LONG iData);
欢迎交流
Component | Import ActiveX Control ... |选择 或 Add | Install ...
或
Project | Import Type Libray ...|选择 或 Add | Install ...
然后
当普通控件用,直接挂接事件。如果不能:
VB及VC都可以接入事件,那应该是个连接点。
1. 实现这个连接点所关联的回调接口;
2. 获得 COM Server 实例;
3. 通过 QueryInterface(IConnectionPointContainer) 获得连接容器,然后挂接实例(回调接口的实例) ComObj 单元中有 InterfaceConnect/InterfaceDisconnect 来完成上述 3 过程。
不过也谢谢Leonardo263090(牛呆呆)的回复。