C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 什么是IconnectionPoint和EventHandling大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
试图理解什么是IConnectionPoint以及它如何连接到IConnectionPointContainer,IEnumConnectionPoints,IEnumConnections和EventHandling.

阅读MSDNCodeProject中的artcicles,它解释了其他方法,如:QueryInterface()和其他方法.

我无法弄清楚所有这些事情(IConnectionPointContainer,IEnumConnections)是如何相互关联以及事件处理的.

我只想创建一个simpleClient,它将触发COM对象中的事件.

如果有任何文章代码片段可以解释事物如何通过简单和小块代码相互关联将是有帮助的.

值得一提的是我最近开始在C开发,一个初学者.

编辑@sharptooth

对于Line“通常,您的客户端将接收事件,COM对象将触发这些事件.”

从许多文章中,我理解的是当我们在那时使用连接点时,
客户端公开服务器使用的一组方法.

我刚刚从TechRepublich:概述了文章的一部分

客户端服务器与接收源

因此,在标准客户端 – 服务器系统中使用COR_83_11845@进行正常编程和使用连接点之间的主要区别在于,在标准客户端 – 服务器情况下,服务器公开客户端使用的方法列表,并且在连接点情况下,客户端公开服务器使用的一组方法.

解决方法

看起来你错了大图.通常,COM对象将触发这些事件.为了实现这一点,客户端请求(QueryInterface())IConnectionPointContainer接口,调用IConnectionPointContainer :: FindConnectionPoint()和IConnectionPoint :: Advise()并将指针传递给它自己或那里的一些子对象.

客户端必须实现一些事件接口(其中一个GUID传递到IConnectionPointContainer :: FindConnectionPoint()).订阅(建议)后,客户端将接收来自COM服务器的调用 – 事件.

通常,COM服务器会定期执行某些操作并决定通知客户端(例如,用户在ActiveX控件中移动鼠标) – 它只是获取一个指向事件接收器的指针数组,并在该接口上调用它想要的方法.

COM事件实际上是回调的实现.与在C(或C或任何其他支持函数指针或接口的语言)中使用回调的方式相同,您可以在COM中使用事件.是的,你是对的,当服务器触发事件​​时,客户端实际上充当对事件作出反应的服务器.这是一个回调场景 – 其他代码调用您的功能.在这种情况下,服务器会调用您的事件接口的实现.

大佬总结

以上是大佬教程为你收集整理的c – 什么是IconnectionPoint和EventHandling全部内容,希望文章能够帮你解决c – 什么是IconnectionPoint和EventHandling所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:c什么