如何在接收器对象上实现传出接口(C ++)

时间:2009-01-18 13:29:56

标签: c++ com event-handling

我有一个预定义的 TLB文件,例如IS8SimulationEvents包装方法实现:

inline HRESULT IS8SimulationEvents::S8SimulationReset ( ) {
    HRESULT _result = 0;
    _com_dispatch_method(this, 0x1, DISPATCH_METHOD, VT_ERROR, (void*)&_result, NULL);
    return _result;
}

使用Oleview,我可以看到附加到COM对象的 IConnectionPointContainer 接口。

问题:

  • 如何在接收器对象上实现传出接口,以便客户端从COM 对象接收事件通知

没有

  • ATL
  • MFC

1 个答案:

答案 0 :(得分:2)

本文解释了如何在普通C http://www.codeproject.com/KB/COM/com_in_c5.aspx

中实现连接点源/汇

如果你想要了解低级别的COM,可能会推荐Jeff Glatt撰写的全系列文章“普通C中的COM”。

PD:Lambdasoft Comet是一个实现不使用ATL / MFC的COM包装器的框架,它已经很过时但是如果你想要一些简单的东西值得一看https://bitbucket.org/sofusmortensen/comet/或{{3 }}