我正在制作一个控件的包装器,一个ocx对象的接口。必须创建一个ATL项目,然后添加/加载ocx文件。它具有暴露的属性,方法和事件。我可以控制/使用它的属性和方法但是我被卡在事件上,特别是在它发生后处理它。
在Google上搜索过它,我发现的大多数指南都是从头开始或从ATL事件本身开始的。我想要实现的是利用来自ocx的暴露事件。有没有想法?
非常感谢。
答案 0 :(得分:0)
在ATL中,处理COM事件的标准选项是使用IConnectionPointContainer
和朋友,如Event Handling and ATL中所述:
有关如何触发事件和实施连接点的信息,请阅读ATL Connection Points。
或者,尤其是对于ActiveX控件事件,您的第二个选项是IDispEventImpl
类引用第一个链接:
IDispEventImpl
and IDispEventSimpleImpl
classes IDispEventImpl
也会在其他资源中详细解释,例如: