断点实现

 

断点的功能已经实现了,至少表面上是这样。当debug work 线程收到断点消息时,我让其悬挂起来,这时等待调试消息的函数也就无法继续收到调试消息。被调试程序也同时处于悬挂状态,这样当用户输入继续执行的命令,调试才能继续进行。

设置断点的方法也实现了。首先将要设置断点的命令备份,然后替换为int 3。这样当执行到该命令时,就会执行int 3,而执行断点进入到调试器,此时再将原命令还原。遇到的问题这种方法只能在程序初始时才能够实现。我现在要做的是如何向调试子系统发送消息,比如windbg的ctrl+break方法的实现。首先UI线程向调试子系统发送断点的消息,然后调试子系统向调试器发送断点的消息。这可能需要内核函数的实现,我会实现一个驱动程序,来提供内核函数的借口,这个功能将十分的强大,如果能任意调用内核函数。太晚了,就写到这吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值