首页
社区
课程
招聘
一个关于SEH的问题。
发表于: 2004-11-16 10:20 4044

一个关于SEH的问题。

2004-11-16 10:20
4044
_start:

    lea    eax,Final_Handler
  invoke  SetUnhandledExceptionFilter,eax                                               
        xor    ecx,ecx
        mov    eax,200     
        cdq
        div    ecx
                                                         

Final_Handler:
    invoke    MessageBox,NULL,addr szMsgOK,addr szCap,MB_OK+MB_ICONEXCLAMATION
    mov    eax,EXCEPTION_EXECUTE_HANDLER        
    ret
end start

上面的代码在未调试的状态下正确地调用了Final_Handler,但用Ollydbg或vc++调试的时候中出现“被调试程序无法处理异常",然后程序就中止了。为什么呢?

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 1
支持
分享
最新回复 (5)
雪    币: 5124
活跃值: (2578)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
2
嘿嘿,无意中得到一个反调试的方法
2004-11-16 18:48
0
雪    币: 390
活跃值: (707)
能力值: ( LV12,RANK:650 )
在线值:
发帖
回帖
粉丝
3

无意发现一篇文章,就是讲这个的。实际上是因为你用了SetUnhandleExcetionFilter

请看看。

最后于 2025-2-12 11:26 被kanxue编辑 ,原因:
2004-11-17 10:29
0
雪    币: 392
活跃值: (909)
能力值: ( LV9,RANK:690 )
在线值:
发帖
回帖
粉丝
4

用这个就可以了:
****

最后于 2025-2-12 11:26 被kanxue编辑 ,原因:
2004-11-17 12:36
0
雪    币: 390
活跃值: (707)
能力值: ( LV12,RANK:650 )
在线值:
发帖
回帖
粉丝
5
2004-11-17 12:47
0
雪    币: 332
活跃值: (499)
能力值: ( LV9,RANK:330 )
在线值:
发帖
回帖
粉丝
6
这里就有啊,在他的网络硬盘里!
http://bbs.pediy.com/showthread.php?s=&threadid=6829
2004-11-17 16:34
0
游客
登录 | 注册 方可回帖
返回