nike_zzyun
驱动牛犊
驱动牛犊
  • 注册日期2007-01-06
  • 最后登录2011-06-15
  • 粉丝0
  • 关注0
  • 积分366分
  • 威望87点
  • 贡献值0点
  • 好评度36点
  • 原创分0分
  • 专家分0分
阅读:2614回复:12

怎样用SoftICE来调试.sys驱动

楼主#
更多 发布于:2007-06-12 13:09
Hi,
请教各位几个关于SOFTICE调试的问题。
第一,如果我想调试我的SYS文件,一定要将SYS装上么?
第二,要调试SYS文件,一定要用fre或者Debug等其他的调试SYS?不能用realse版本的SYS?
第三,我是这样调试我的SYS的。
首先生成一个SYS文件,这个文件是RELEASE版本的,
1、打开Soft-ICE中的“Symbol Loader”工具。  
2、用“File” 菜单中的“Open Module ...”菜单项打开调试符号文件(文  
件类型是“Symbol File”)。  
3、用“Module”菜单中的“Translate”菜单项将SYM文件转换成Soft-ICE的  
NMS调试符号文件。  
4、用“Module”菜单中的“Load”菜单项装载调试符号文件。  
5、按Ctrl+D组合键激活Soft-ICE,然后输入file ,显示我的文件是myddk.c
6 .输入file myddk.c 能看到 .C文件的源码
7 然后再输入BPX kbfilter_adddevcie(kbfilter_adddevcie为源代码中的一个函数)
但是始终看不到断点跳到源代码中的 kbfilter_adddevcie处。不知道是为什么的,还请各位赐教的。
Thanks
nike_zzyun
驱动牛犊
驱动牛犊
  • 注册日期2007-01-06
  • 最后登录2011-06-15
  • 粉丝0
  • 关注0
  • 积分366分
  • 威望87点
  • 贡献值0点
  • 好评度36点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-06-12 19:04
对了,有这样的情况的,我输入bpx kbfilter_adddevice后在SOFTICE的代码区可以看到一个绿色的光标,
我怀疑可能运行到这里了,但是我用F10来单步执行的时候就显示的是汇编的代码,不是我自己的代码的,我怀疑是没加载源代码的,但是又不知道如何加载的,还请走过路过的朋友们指点一下啊。
zchong
驱动牛犊
驱动牛犊
  • 注册日期2006-12-29
  • 最后登录2007-11-09
  • 粉丝0
  • 关注0
  • 积分250分
  • 威望26点
  • 贡献值0点
  • 好评度25点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-06-12 19:48
我也是刚接触USB驱动程序调试,好象驱动程序运行后才能到达你设置的断点处
nike_zzyun
驱动牛犊
驱动牛犊
  • 注册日期2007-01-06
  • 最后登录2011-06-15
  • 粉丝0
  • 关注0
  • 积分366分
  • 威望87点
  • 贡献值0点
  • 好评度36点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-06-13 10:49
Hi  zchong ,
你的意思是说要先用INF装上SYS后才可以调试?
gutian98
禁止发言
禁止发言
  • 注册日期2003-01-12
  • 最后登录2016-12-11
  • 粉丝4
  • 关注2
  • 积分760分
  • 威望8026点
  • 贡献值1点
  • 好评度364点
  • 原创分0分
  • 专家分21分
  • 金点子奖
  • 社区居民
地下室#
发布于:2007-06-13 11:46
用户被禁言,该主题自动屏蔽!
zchong
驱动牛犊
驱动牛犊
  • 注册日期2006-12-29
  • 最后登录2007-11-09
  • 粉丝0
  • 关注0
  • 积分250分
  • 威望26点
  • 贡献值0点
  • 好评度25点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-06-13 13:52
是这样的
nike_zzyun
驱动牛犊
驱动牛犊
  • 注册日期2007-01-06
  • 最后登录2011-06-15
  • 粉丝0
  • 关注0
  • 积分366分
  • 威望87点
  • 贡献值0点
  • 好评度36点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2007-06-13 16:28
要调试SYS文件,一定要用fre或者Debug等其他的调试SYS?不能用realse版本的SYS?
nike_zzyun
驱动牛犊
驱动牛犊
  • 注册日期2007-01-06
  • 最后登录2011-06-15
  • 粉丝0
  • 关注0
  • 积分366分
  • 威望87点
  • 贡献值0点
  • 好评度36点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2007-06-13 16:29
要调试SYS文件,一定要用fre或者Debug等其他的调试SYS?不能用realse版本的SYS?
ke077
驱动牛犊
驱动牛犊
  • 注册日期2007-03-14
  • 最后登录2010-10-28
  • 粉丝1
  • 关注0
  • 积分362分
  • 威望134点
  • 贡献值0点
  • 好评度72点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2007-06-13 18:39
在安装完driverstudio后,好像有个文件叫help
当然要用debug版本,可以设置断点并跟踪调试,如果你足够强,可以考虑用release版本调试
nike_zzyun
驱动牛犊
驱动牛犊
  • 注册日期2007-01-06
  • 最后登录2011-06-15
  • 粉丝0
  • 关注0
  • 积分366分
  • 威望87点
  • 贡献值0点
  • 好评度36点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2007-06-14 10:18
我是这样调试我的SYS的。
首先生成一个SYS文件,这个文件是Debug版本的,
1、打开Soft-ICE中的“Symbol Loader”工具。  
2、用“File” 菜单中的“Open Module ...”菜单项打开调试符号文件(文  
件类型是“Symbol File”)。  
3、用“Module”菜单中的“Translate”菜单项将SYM文件转换成Soft-ICE的  
NMS调试符号文件。  
4、用“Module”菜单中的“Load”菜单项装载调试符号文件。  
5、按Ctrl+D组合键激活Soft-ICE,然后输入file ,显示我的文件是myddk.c
6 .输入file myddk.c 能看到 .C文件的源码
7 然后再输入BPX driverentry(driverentry为源代码中的入口函数)
我在SOFTICE的源代码区可以看到一个蓝色的光标的,然后就按F10进行单步调试。此时在SOFTICE的源代码区显示的是汇编语言的,不知道是为什么的,还请各位指点指点的拉。
Thanks.
nike_zzyun
驱动牛犊
驱动牛犊
  • 注册日期2007-01-06
  • 最后登录2011-06-15
  • 粉丝0
  • 关注0
  • 积分366分
  • 威望87点
  • 贡献值0点
  • 好评度36点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2007-06-14 13:27
对了,那个蓝色的光标应该类似VC中用F9插入的调试断点。
然后我用F10来执行的时候怎么就是不能进入源代码中来调试?
nike_zzyun
驱动牛犊
驱动牛犊
  • 注册日期2007-01-06
  • 最后登录2011-06-15
  • 粉丝0
  • 关注0
  • 积分366分
  • 威望87点
  • 贡献值0点
  • 好评度36点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2007-06-17 18:36
走过路过的高手们来点指点拉.呵呵
cnwnbb
驱动牛犊
驱动牛犊
  • 注册日期2007-05-08
  • 最后登录2008-01-17
  • 粉丝0
  • 关注0
  • 积分220分
  • 威望23点
  • 贡献值0点
  • 好评度22点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2007-07-16 23:09
不知楼主是用什么软件开发的驱动?

是完全用的DDK,还是DriverStudio+DDK,我下面说的是在DriverStudio+DDK下用softICE调驱动。要调试驱动,首先都是要把驱动装上才可以调的,再用你上面的步骤,在第六步中file ×××.cpp文件,在其中设置断点,推出softICE,运行用户模式下的应用程序,softICE就会弹出来,运行到你设置的断点。
游客

返回顶部