首页
社区
课程
招聘
跳过按纽直接运行按纽事件代码
发表于: 2011-12-8 21:20 11814

跳过按纽直接运行按纽事件代码

2011-12-8 21:20
11814
我有一VC++程序,运行后显示界面,界面有确定和取消两个按纽。点取消就是关闭界面。点确定
可释放资源并运行。现一直查找确定按纽按下后执行的代码。分别用到不同的工具:mfcspy.exe
和MFC按钮入口地址定位器.exe查找按纽事件,都找不出来,只知道确定按纽ID为:0000008C。请教各位牛哥,如何能找到按纽执行代码。我的目的是运行界面出现后,不手动点确定,让它自己运行确定按纽执行的那块代码,能实现吗。

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

收藏
免费 0
支持
分享
最新回复 (45)
雪    币: 206
活跃值: (86)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
2
当然可以!!
《《《MFC程序》》》
RELEASE
特征码:FF 55 14 EB 7F FF 75 0C
特征码来源:MFC42.DLL
DEBUG
特征码:FF 55 FC E9 48 04 00 00 33 C9
特征码来源:MFC42D.DLL

用OD很快能找到。。。
2011-12-8 21:59
0
雪    币: 206
活跃值: (86)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
3
找到后要自己写代码让他调用咯!!!
2011-12-8 22:03
0
雪    币: 206
活跃值: (86)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
4
你可以在AfxWinMan 前面调用按钮事件试试(自己汇编),不知道行不行。。。
2011-12-8 22:12
0
雪    币: 159
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
VS2010 Release 特征码 83C0 C7 56 83 F8 0B

可以直接到按钮事件的switch
2011-12-8 22:33
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
各位,小弟基础太差还不太明白啊
2011-12-8 22:43
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
2楼和5楼两位牛哥,说说具体怎么操作啊用什么工具?小弟基础太差啊。谢谢你们了
2011-12-8 22:47
0
雪    币: 206
活跃值: (86)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
8
OD会用吗?
2011-12-8 23:10
0
雪    币: 1115
活跃值: (122)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
9
使用MDebug,可以直接显示VC++按钮对应的代码地址
2011-12-8 23:15
0
雪    币: 206
活跃值: (86)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
10
accessd 你的MDebug调试器 除0异常不能忽略悼!!!,
还有就是能不能加上忽略异常快捷键。
2011-12-8 23:20
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
哪里是确定按纽执行的代码啊,我直接按特征码找到了这里,如图
上传的附件:
2011-12-9 20:33
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
牛哥们!帮忙指点下啊
2011-12-9 22:59
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
MdeBUG打开后,怎么找按纽代码啊!
上传的附件:
2011-12-10 09:11
0
雪    币: 1115
活跃值: (122)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
14
假如你要找对话框的按钮对应的代码,例如下面的程序:


用MDebug打开后,在程序出现窗口的情况下,点工具条或菜单的“查看HWND”,在出现的HWND窗口中直接找到对应按钮的代码,如图:
上传的附件:
2011-12-10 09:42
0
雪    币: 1115
活跃值: (122)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
15
对比一下源代码:
上传的附件:
2011-12-10 09:44
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
程序载入后如图:

按了HWND出现空白啊:
上传的附件:
2011-12-10 10:01
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
哦看到了如图:
0x0049F6FC 这个是确定按纽调用地址吗?
上传的附件:
2011-12-10 10:12
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
HWND:    0x00010B5C
Parent HWND:    0x00030B52
ID:      0x8C (140)
Text:    "&OK"
类名:    "Button"
线程:    0x00000BD4
Style:   0x54012F01  (WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_MAXIMIZEBOX | WS_OVERLAPPEDWINDOW | BS_DEFPUSHBUTTON | BS_AUTOCHECKBOX | BS_3STATE | BS_GROUPBOX | BS_AUTORADIOBUTTON | BS_OWNERDRAW | BS_LEFT | BS_RIGHT | BS_CENTER | BS_TOP | BS_BOTTOM | BS_VCENTER | BS_MULTILINE)  
ExStyle: 0x00000000  (无)  
位置:    (430,379), (510,403)
大小:    (80,24)
WndProc: 0x0049F6FC (ButtonWndProc(HWND hWnd, UINT message, WPARAM, LPARAM))

没有找到与此ID相关联的消息
2011-12-10 10:18
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
没有找到与此ID相关联的消息啊怎么办呢
2011-12-10 10:19
0
雪    币: 6
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
把你的文件传上来,大牛们有可能给你调试一下,你这样说不行
2011-12-10 10:21
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
用sp+++结果,帮忙看下
上传的附件:
2011-12-10 10:27
0
雪    币: 1115
活跃值: (122)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
22
WTWindow不是标准的对话框,标准的对话框是#32770。所以没有直接显示。
你在左边的按钮上点右键,点“设置消息断点”,消息处理函数地址填写WTWindow的WndProc地址,然后在你的程序上点按钮,单步调试下来就可以找到了。
2011-12-10 10:28
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
没办法了,设了消息断点后,鼠标移到程序按纽上,没点程序就退出了
2011-12-10 11:17
0
雪    币: 141
活跃值: (97)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
大牛出下注意啊
2011-12-10 14:12
0
雪    币: 85
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
http://bbs.pediy.com/showthread.php?t=144032
2011-12-11 01:45
0
游客
登录 | 注册 方可回帖
返回
//