首页
社区
课程
招聘
[旧帖] F12查看堆栈法老是停在消息处理的地方? 0.00雪花
发表于: 2010-6-10 07:34 3427

[旧帖] F12查看堆栈法老是停在消息处理的地方? 0.00雪花

2010-6-10 07:34
3427
软件是BC++写的。我想去除类似于MessageBox这样的提示框。但是无论在哪个地方暂停,查看堆栈都是显示的如下信息
调用堆栈:     主线程
地址       堆栈       函数过程 / 参数                       调用来自                      结构
0012F600   77D19418   包含ntdll.KiFastSystemCallRet           USER32.77D19416               0012F630
0012F604   0048389C   <jmp.&USER32.WaitMessage>             chess.00483897                0012F630
0012F634   00483050   ? chess.004837C8                      chess.0048304B                0012F630
0012F658   00480290   chess.00483034                        chess.0048028B                0012F6A8

在最后一样双击进入就进入如下代码,很明显是循环处理消息的地方。请教下这是什么原因啊?该怎么样来定位关键代码呢?
00480289  |> /8B03          /mov     eax, dword ptr [ebx]
0048028B  |. |E8 A42D0000   |call    00483034         ;停在这里
00480290  |. |8B03          |mov     eax, dword ptr [ebx]
00480292  |. |80B8 8C000000>|cmp     byte ptr [eax+8C], 0
00480299  |. |74 0F         |je      short 004802AA
0048029B  |. |8B45 FC       |mov     eax, dword ptr [ebp-4]
0048029E  |. |C780 34020000>|mov     dword ptr [eax+234], 2
004802A8  |. |EB 14         |jmp     short 004802BE
004802AA  |> |8B45 FC       |mov     eax, dword ptr [ebp-4]
004802AD  |. |83B8 34020000>|cmp     dword ptr [eax+234], 0
004802B4  |. |74 08         |je      short 004802BE
004802B6  |. |8B45 FC       |mov     eax, dword ptr [ebp-4]
004802B9  |. |E8 26FDFFFF   |call    0047FFE4
004802BE  |> |8B45 FC       |mov     eax, dword ptr [ebp-4]
004802C1  |. |8B80 34020000 |mov     eax, dword ptr [eax+234]
004802C7  |. |85C0          |test    eax, eax
004802C9  |.^\74 BE         \je      short 00480289


[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
若总是处于消息处理中, 一般可能是该在之前查找如何陷入的分歧点, 已经进入了当然会一直等待消息处理结束 ... 可是在调试中咋传递消息 ...

2010-6-10 10:20
0
雪    币: 199
活跃值: (65)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
3
如果软件不是很重要的话,建议发附件上来..这样说 太模糊了.
2010-6-12 20:30
0
游客
登录 | 注册 方可回帖
返回
//