首页
社区
课程
招聘
[原创]hook类[有码]
发表于: 2010-6-21 09:40 21550
举报

[原创]hook类[有码]

2010-6-21 09:40
21550

前两天在一项目中用了大量的hook,于是写了这个hook类,不敢独享,特发出来方便大家使用

有码的

更新了下,加上了在多线程环境中使用,另外fix了个小地方

使用方法如下:
void testTimer();

void testTimer2();

CHook::GetHookInstance()->AddHook((int)testTimer, (CHook::HookCProc)testTimer2);

testTimer();

CHook::GetHookInstance()->RemoveHook((int)testTimer);


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 7
支持
分享
最新回复 (22)
雪    币: 1137
活跃值: (10)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
2
顶!
下载学习...
2010-6-21 10:37
0
雪    币: 181
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
求高清无码~
2010-6-21 10:55
0
雪    币: 247
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
大量的HOOK,哇,正规产品可以这样弄么?
2010-6-21 11:17
0
雪    币: 213
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
微软的detours不是已经封装了吗,干嘛还要自己写
2010-6-21 17:47
0
雪    币: 33
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
hash_map

第一见着用, 可惜添加到工程中,编译不过 (VC6)
2010-6-22 02:16
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
hash_map VC6中没有。我有个Hook类,可以将hook回调函数绑定到类的成员函数上~
2010-6-22 10:47
0
雪    币: 62
活跃值: (72)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
8
#include <hash_map>
using namespace stdext;

也实现了hook回调函数绑定到类的成员函数上
2010-6-22 14:01
0
雪    币: 141
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
强大的C++功底
2010-6-24 19:47
0
雪    币: 219
活跃值: (47)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
谢谢分享,下载学习!
2010-6-26 10:41
0
雪    币: 517
活跃值: (84)
能力值: ( LV12,RANK:250 )
在线值:
发帖
回帖
粉丝
11
采用0xE8 call做inline hook,有个致命问题,改变堆栈。
为了在inline hook code里轻易获得跳转来源,方便了这里,却引进了这个致命问题。如果覆盖的5 byte中的代码有操作堆栈,可能出现不可预料问题。
楼主可以考虑对每个hook实现针对性的inline hook code,实现起来还算简单。加油。
2010-6-26 11:40
0
雪    币: 61
活跃值: (25)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
12
顶,收藏学习!
2010-6-26 14:28
0
雪    币: 62
活跃值: (72)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
13
在进入hook例程时保存了寄存器的值出hook例程再恢复,所以没问题(浮点寄存器没处理)
2010-6-26 18:02
0
雪    币: 267
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
好东西,收下了
2010-6-28 18:48
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
顶LZ!
下载学习...
收藏
2010-7-1 07:49
0
雪    币: 62
活跃值: (72)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
16
更新了下,需要的朋友可以重新下
2010-7-20 10:22
0
雪    币: 335
活跃值: (140)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
写得不错,辛苦啦!
2010-7-20 10:45
0
雪    币: 517
活跃值: (64)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
18
已下载,感谢
2010-7-21 08:37
0
雪    币: 13
活跃值: (49)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
19
可以说清楚点吗。偶不懂。小菜来的,。谢谢。。
2010-7-25 02:27
0
雪    币: 2242
活跃值: (488)
能力值: ( LV9,RANK:200 )
在线值:
发帖
回帖
粉丝
20
这次可别一回复,论坛就休息了
看来小哥的大作写好了,求bin
2010-7-28 12:27
0
雪    币: 178
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
有码?

让我想到了Japan!
2011-7-15 09:32
0
雪    币: 302
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
砸缸,砸缸,又发飙了...
2011-7-15 11:45
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
23
这个能hook类成员函数吗? this指针怎么处理的?有例子吗?
2020-12-1 18:58
0
游客
返回
//