![]() |
1
8
看来你大错特错了。通常,您的客户机将接收事件,而COM对象将触发这些事件。为了实现这一点,客户要求(
客户端必须实现一些事件接口(其中一个GUID被传递到
通常情况下,COM服务器会例行地做一些事情,并决定通知客户端(比如用户在ActiveX控件中移动鼠标)——它只会获取一个指向事件接收器的指针数组,并在该接口上调用所需的方法。 COM事件实际上是 回调 . 使用C++中的回调(或C或支持函数指针或接口的任何其他语言)的方式与COM中的事件一样。是的,你说得对,当服务器触发事件时,客户机实际上充当了服务器对事件的反应。这是一个回调场景 其他代码 调用您的功能。在这种情况下,服务器将调用事件接口的实现。 |
![]() |
2
-1
这两篇文章提供了有用的信息: https://devblogs.microsoft.com/oldnewthing/?p=4113 https://devblogs.microsoft.com/oldnewthing/20130612-00/?p=4103
@sharptooth忘记提到的是,指针传递给
这意味着它不仅必须实现特定的事件接口,还必须实现
|
![]() |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
![]() |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
![]() |
rainer · 后台插入程序的初始化 1 年前 |
![]() |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
|
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
|
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |