xiaomin
驱动牛犊
驱动牛犊
  • 注册日期2001-11-05
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1803回复:7

SoftICE问题!

楼主#
更多 发布于:2002-04-08 11:13
我在win 2000下,用SoftICE来debug驱动程序(*.sys)。
我先Symbol Loader中open module *.sys,再translate,再add the Symbol File *.nms。然后在SoftICE Initialization Settings...中设置了Initialization String为BPX DriverEntry, BPX xxxFindAdapter, BPX xxxStartIo,等等,但是它不会停在DriverEntry或FindAdapter处,而直接断在StartIo了,这是怎么一回事呢?有什么方法可以进到DriverEntry或FindAdapter中debug呢?是不是SoftICE在win 2000下使用要进行一些附加的设置,比如修改bat文件之类的?请各位斑竹、资深会员、论坛大佬为小弟指点一二,谢谢啦!

最新喜欢:

chxunchxun
Xiaomin
tigerzd
驱动老牛
驱动老牛
  • 注册日期2001-08-25
  • 最后登录2004-12-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-04-08 13:01
没有理由啊,不过你可以如此试试:

先将驱动程序卸载,用Loader32打开sys文件,设好断点如DriverEntry等,再用控制面板的添加新硬件重新安装。安装时会马上运行驱动程序的Init例程,应该可以断到了吧!
犯强汉者,虽远必诛! [img]http://www.driverdevelop.com/forum/upload/tigerzd/2002-12-13_sf10.JPG[/img]
xiaomin
驱动牛犊
驱动牛犊
  • 注册日期2001-11-05
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-04-08 16:20
我照您说的作了,它好像断是断了,但只是一闪而过,就黑屏了,按Ctrl + D,会继续安装,然后又闪,又黑屏,就再也回不到Windows了,死机了!怎么办?
Xiaomin
tigerzd
驱动老牛
驱动老牛
  • 注册日期2001-08-25
  • 最后登录2004-12-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-04-08 16:36
可能的原因:
1、SoftIce没有配置好;
2、驱动程序写的有问题。
估计是前一种问题,因为SOFYICE断住的话,你不输入g或x命令就不应该继续执行。
犯强汉者,虽远必诛! [img]http://www.driverdevelop.com/forum/upload/tigerzd/2002-12-13_sf10.JPG[/img]
xiaomin
驱动牛犊
驱动牛犊
  • 注册日期2001-11-05
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-04-09 13:10
再请教版主,该怎么配置SoftICE才对呢?有哪些配置呢?
Xiaomin
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-04-09 14:03
你开始的时候断不住是因为你设置断点之前该例程已经运行了!所以在你设置断点之后也不会弹出来,还有就是有一些类型的驱动程序是不能随便卸载再从新加载的!不知道你调试的驱动程序是不是这个类型,你可以修改SOFTICE的设置,在LOADER32里面的菜单里面有
菜单EDIT里面的general,里面有一些初始化的设置,把那个X;去掉,再看看吧,具体的你要看使用教程了,本站有的下
xiaomin
驱动牛犊
驱动牛犊
  • 注册日期2001-11-05
  • 最后登录2004-10-25
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-04-09 17:25
我写的是SCSI的驱动。‘X’去掉我也试过了,不行。
我还试过另一种方法,再DriverEntry中加一句“_asm int 3”,然后再Symbol Loader的Initialization Setting中加上“I3HERE ON”,但也没用,这会更糟,启动的时候就蓝屏了。显示
STOP:0x0000001E(0x80000003,0xF5A9o2C8,0x00000000,0x81694810)
KMODE_EXCEPTION_NOT_HANDLED
Xiaomin
guardee
驱动巨牛
驱动巨牛
  • 注册日期2002-11-08
  • 最后登录2010-05-29
  • 粉丝2
  • 关注1
  • 积分2分
  • 威望34点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-04-09 23:28
你写的这个类型的驱动程序我估计是在系统还没有加载SOFTICE的时候就已经加载你的驱动程序了,所以在你启动的时候会出现那个   INT 3的错误代码,要调试你的这个驱动程序可能需要用到WINDBG了!就是双机调试了
游客

返回顶部