- COM client通过接口使用COM server,而COM server通过events(类似回调)通知COM client
- 条件:
- client:
- event sink:COM对象,提供事件关联接口给server
- server:
- IConnectionPointContainer
- IConnectionPoint
-
- 实现(通过连接点):
- 获取server的IConnectionPointContainer 接口
- 获取连接点:IConnectionPointContainer::FindConnectionPoint
- 建立连接:IConnectionPoint::Advise
- 取消连接:IConnectionPoint::Unadvise
- 说明:
- ISinkEvent需要从IDispatch继承?IDispatch只是ISinkEvent的一种实现方法
- 事件接口方法必须为ISinkEvent::Invoke?若用IDispatch实现ISinkEvent则事件接口方法为ISinkEvent::Invoke
- 参考: