能力值:
( LV2,RANK:10 )
|
-
-
2 楼
好文章,果然是高人,支持!!!!!!!
建议版主加精华!!!!!!!!
|
能力值:
( LV6,RANK:90 )
|
-
-
3 楼
收下了。楼主不防写个小工具。
|
能力值:
( LV3,RANK:20 )
|
-
-
4 楼
顶啊
我以前也考虑过这个问题,但就是没有想到好的办法。
|
能力值:
( LV4,RANK:50 )
|
-
-
5 楼
学习。。。
|
能力值:
(RANK:350 )
|
-
-
6 楼
最初由 dssz 发布 好文章,果然是高人,支持!!!!!!!
建议版主加精华!!!!!!!!
才看到。;(
如果还有漏掉的好文章,还麻烦各位顶一下。
|
能力值:
( LV9,RANK:170 )
|
-
-
7 楼
不错,想当时也被困扰。。。
|
能力值:
( LV4,RANK:50 )
|
-
-
8 楼
楼主要是给合一个具体的例子来讲解就更好了
|
能力值:
( LV12,RANK:450 )
|
-
-
9 楼
好文章啊,第200个帖就留在这里啊.!!呵呵..
|
能力值:
( LV8,RANK:130 )
|
-
-
10 楼
最初由 kanxue 发布
才看到。;( 如果还有漏掉的好文章,还麻烦各位顶一下。
以后看到没加精的都去顶一下
|
能力值:
( LV4,RANK:50 )
|
-
-
11 楼
最初由 heXer 发布
以后看到没加精的都去顶一下
|
能力值:
( LV12,RANK:660 )
|
-
-
12 楼
确是好文章,差点漏掉~
|
能力值:
( LV9,RANK:530 )
|
-
-
13 楼
最初由 heXer 发布
以后看到没加精的都去顶一下
|
能力值:
( LV9,RANK:690 )
|
-
-
14 楼
正写出了我所需要的..
有没有更通用的办法?
找出delphi的,vb的,etc...
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
非常好
|
能力值:
( LV4,RANK:50 )
|
-
-
16 楼
不必用ida,用ultraedit就行。方法如下
注意到mfc的消息列表有
PAFX_MSGMAP_ENTRY = ^AFX_MSGMAP_ENTRY;
AFX_MSGMAP_ENTRY = packed record
nMessage: dword; // windows中消息代号,定义在WinUser.h中
nCode: dword; // 如果nMessage是0x0111(WM_Command),nCode代表扩展消息,例如WM_Exchange等.亦定义在WinUser.h中
nID: dword; // 控件ID, 与资源部分中控件的ID一致
nLastID: dword; // = nID
nSig: dword; // 含义不清楚
AFX_PMSG: dword; // 指向消息处理的具体代码的开始位置
end;
所以我们只要知道消息的类型,和发出消息的控件ID,就可以搜索找到这个数组,那么AFX_PMSG就是你需要下断的地址
基于类似的方法,vb,delphi都可以这样来找到事件的处理代码的起始位置。
我想,大部分现代编译器编译的程序也应该适用这种方法。
扩展开去,这种方法应该属于伟大的dead listing技术之一。如果有兴趣,我们能进一步解析mfc,delphi,vb等程序的结构,从而了解更多。《黑客反汇编揭密》那本书讲的基本就是dead listing技术(虽然有人认为那本书很不怎么的)。
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
小楼GG在啊,顶一下!
|
能力值:
( LV4,RANK:50 )
|
-
-
18 楼
好文章呀!支持!
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
看过...就顶...............
|
能力值:
( LV6,RANK:90 )
|
-
-
20 楼
谢谢小楼的方法,呵呵!
比较好用!
用bpx的方法,怎么用UE找不到
C0 24 F0 83 C0 2F 48 83 F8 30 0F 87 C6 02
有人试验了吗?我用的是Release方式编译的啊!
|
|
|