首页
社区
课程
招聘
[求助]COM组件中的事件的HOOK
发表于: 2013-2-5 15:21 6212

[求助]COM组件中的事件的HOOK

2013-2-5 15:21
6212
最近研究一个ocx控件,coclass实现了两个接口IA,IAEvents,IA包含控件功能,IAEvents包含了IA的事件,第一个接口通过Hook CoCreateInstance得到IUnknown指针后,(IUnknown*)->QueryInterface(IID_IA获得IA接口,通过IA的VTable,Hook成功,但IAEvents的指针通过(IUnknown*)->QueryInterface(IID_IAEvents却无法获取,返回E_NOINTERFACE,没有此接口,但我通过OLEView查看ocx实现:
coclass ZKA {
    [default] interface IA;
    [default, source] dispinterface IAEvents;
};
[
  uuid(762A8D2D-3DDE-9744-BA38-08F900D10D6D),
  version(3.1),
  helpstring("Dispatch interface for ZKA Control"),
  dual
]
dispinterface IA {
    properties:
    methods:
        [id(0x00000006), propget]
        long RecCount();
        [id(0x00000006), propput]
        void RecCount([in] long rhs);
        [id(0x00000008)]
        void Method1();
}
[
  uuid(7ABB2E53-7EAE-4B51-A964-009ADC68D107),
  version(3.1),
  helpstring("Events interface for ZKA Control")
]
dispinterface IAEvents {
    properties:
    methods:
        [id(0x00000005)]
        void OnEvent1([in] long AQuality);
}
为什么无法找到IAEvents呢,还有这个COM组件的事件那位大侠知道他是怎么个实现步骤的,通过连接点or...?我想截取IAEvents中的事件,怎么能做到啊,望各位大侠指点啊,不胜感激。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 276
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
hook即可
2013-2-5 21:36
0
雪    币: 40
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
event接口还hook干啥呢?

你直接event sink连上去,有事件发生自然就call过来了啊...
2013-2-6 16:47
0
游客
登录 | 注册 方可回帖
返回
//