首页
社区
课程
招聘
[求助]windbg捕获异常后,如何让程序可以继续 try catch
发表于: 2010-4-19 14:26 9182

[求助]windbg捕获异常后,如何让程序可以继续 try catch

2010-4-19 14:26
9182
At first, 我用Windbg 去 attach a process (侵入式和非侵入式都试过)
然后那个 process 有个异常,此时 Windbg 停住了,然后 process 中的
_try _catch 就不起作用了,有没有办法在 Windbg 中输入什么命令,可以让
程序 _try _catch 起作用?

另附加一个问题
我的 process 调用了一个 DLLA, DLLA 里面有异常。
DLL未异常前,程序所有模块的 Image Base 地址是正常的,
但执行了 "调用了一个 DLLA, DLLA 里面有异常" 这个动作后,
此时去遍历所有模块,并打印出模块的 Image Base 地址会发现,
某些模块的 Image Base 变成了 0x10000000,
why?

众所周知,0x10000000 是DLL的加载地址,但为何在异常前是 非 0x10000000
在产生异常后就会变成 0x1000000 呢?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
怎么没人知道。。。。
2010-4-20 17:14
0
雪    币: 53
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
忽略该异常。。搜索下用什么命令吧。。我WINDBG也不熟。。。
2010-4-23 17:40
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
用了那个 sxd –h av 命令把 Access violation 的异常忽略掉,并设置为不处理

g

结果,程序定在那里不会动了。为什么。。
2010-5-5 16:42
0
雪    币: 38
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我觉得吧 可以暂时修改下 UnhandledExceptionFilter 中的调试器检查部分的代码实现,异常处理在调试状态和非调试状态是有些区别的..祝LZ早日成功
2010-5-7 11:59
0
雪    币: 357
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
使用gn命令代替g命令
2010-5-7 13:18
0
游客
登录 | 注册 方可回帖
返回
//