-
-
返璞归真--NT下调试DOS程序
-
发表于:
2005-5-17 15:29
4617
-
本想潜心考研,可是这几天时在学得郁闷,便又坐在电脑前摆弄起软件来,当了个共享的东东,没想到是16位的dos程序,OllyDbg不好使了,由于我是XP系统,只能装上SoftICE,可发现SoftICE无法load,bpint断点无法拦截。于是我请教了很多人,但答案都不很满意(基本上都说dos程序要在9x下调试),在也难怪,现在还调试dos程序的机会太少了,没有经验吧,况且调试的大多也在9X系统下,NT下也没有了TR & TRW2000这样优秀的工具(唉,真希望作者可以出新品!)
论坛上搜索,发现以前也有过类似的问题,于是便想了一招,其实这不是什么新鲜玩意,只是一个思路而已。:D
言归正传:
启动softice
开始->运行->cmd 进入命令提示符
将目录切换到你所要调试的程序目录;
输入debug 程序名.exe 回车;
命令 t (看看其装入地址xxxx:xxxx);
u xxxx:xxxx (记下下一命令地址 xxxx:yyyy);
ctrl+d调出softice,bpx xxxx:yyyy,F5返回windows ;
如果此时在命令提示符下输入u xxxx:xxxx,你会看到xxxx:yyyy地址的命令代码变成了INT 3,为什么?softice干的好事!:D
命令提示符下输入g ;
这时程序开始运行了,但马上就会被softice拦截下来。
OK,此时softice正式接管了程序,后面的事就看你的了,祝你好运!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课