首页
社区
课程
招聘
这段程序为何会蓝屏
发表于: 2004-9-9 02:27 4036

这段程序为何会蓝屏

2004-9-9 02:27
4036
程序自己建立了一个SEH handle,
来处理int 1的异常,可是一运行
就蓝屏了!?

.586
.model flat,stdcall
option casemap:none

include  kernel32.inc
include  user32.inc
include  windows.inc

includelib  kernel32.lib
includelib  user32.lib

.data
szCaption  db "SEH",0
szTextSTEP db "程序执行了单步操作!",0
szText     db "程序正常运行了!",0
SafeEsp    dd 0

assume     fs:nothing
.code
start:
     push    SEH                 ;自己的结构化异常处理函数
     push    fs:[0]       
     mov     fs:[0],esp          ;加入到SEH链表中
     mov     [SafeEsp],esp
     int     1
     nop
     invoke  MessageBox,0,offset szText,offset szCaption,MB_OK
     jmp     Exit
SEH:
     invoke MessageBox,0,offset szTextSTEP,offset szCaption,MB_OK
Exit:
     mov     esp,[SafeEsp]
     pop     fs:[0]
     add     esp,4       
     invoke  ExitProcess,0
end start
end

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 1
支持
分享
最新回复 (5)
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
mov     fs:[0],esp          ;加入到SEH链表中
是不是应该
mov     fs:[0],esp-4        ;加入到SEH链表中
2004-9-9 09:18
0
雪    币:
能力值: (RANK: )
在线值:
发帖
回帖
粉丝
3
mov     fs:[0],esp          ;加入到SEH链表中
     mov     [SafeEsp],esp
     很可疑啊
2004-9-9 09:45
0
雪    币: 241
活跃值: (21)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
似乎看不出任何问题.
2004-9-9 12:42
0
雪    币: 1540
活跃值: (2807)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
最初由 mhsong 发布
mov fs:[0],esp ;加入到SEH链表中
是不是应该
mov fs:[0],esp-4 ;加入到SEH链表中
2004-9-9 23:46
0
雪    币: 1540
活跃值: (2807)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
这样的界面用SDK怎么弄,谢谢!

最初由 mhsong 发布
mov fs:[0],esp ;加入到SEH链表中
是不是应该
mov fs:[0],esp-4 ;加入到SEH链表中
2004-9-9 23:47
0
游客
登录 | 注册 方可回帖
返回
//