阅读:2252回复:3
本站前人总结的(SOFTICE简要使用说明)
请高手近来看看啊,这个2001年的东西现在我们大多书用2000+2000DDk+ VC6.0环境也可能不同了请高手们说说现在这些不是不还能用。新手来看看,练练,以后我们就成为高手了,呵呵。想交流驱动开发的留下MSN啊。
|
|
|
沙发#
发布于:2005-07-07 11:28
SOFTICE简要使用说明
软件组成 SOFTICE包括以下几个软件组成部分:WinICE, Symbol Loader, Startup Mode Setup 调试驱动程序的准备工作: 驱动程序的编译连接必须使用CHECK环境,否则将不能进行源代码调试。 一般DDK安装以后,在菜单上都有CHECK模式环境设置和FREE模式环境设置,选择CHECK模式即可。 使用Startup Mode Setup设置WinICE的启动模式。 在NT环境下有4种模式:Boot, System, Automatic, Manual。分别对应一个驱动(服务)启动的模式, Boot模式启动最早, Manual最晚。 WinICE只有早于驱动(服务)启动,才能调试该驱动(服务)。 一般可以将驱动(服务)的启动顺序调整为Manual, 而WinICE的启动模式为Automatic。 本人此次调试HK-CAN30PCI驱动时,由于将WinICE的启动模式设置为System时,屏幕显示出现问题。以按照上述设置启动模式的办法,绕开了该问题。所以也推荐使用上述方法。其实,本人猜测,如果WinICE和驱动的启动模式都设置为Manual,先启动WinICE,再启动驱动程序也应该可以。但这样岂不麻烦。 使用Symbol Loader进行驱动程序符号转化 使用Open Modular菜单打开需要调试的SYS文件。请注意,这必须是驱动启动时实际运行的文件,一般是SYSTEM32DRIVERS目录下的文件,而不是在DDKLIB目录下的文件。 使用Translate菜单将DDK工具生成的符号表转化成WinICE识别的符号表。 在Setting菜单下可以设置选项。 General项:源文件目录是第一次调试某个驱动时必须设置的,否则在转化选项规定将符号和源程序捆绑在一起时无法找到源程序。 Translation项:一般选择“同时加载符号和源程序”,以及“将符号和源程序打包”。 SoftICE Initialization Settings菜单下可以设置ICE启动时的选项: General项:Initialization String一般设置为”X;”,这样ICE启动时不会弹出其界面。 Symbols项:必须使用ADD按钮将要调试的设备驱动的符号文件,后缀为NMS,加载进来。这样在ICE启动,设备驱动启动之前,将设备驱动的符号加载进来。 Trouble Shooting项:一般不会涉及到此项,但是本人在调试HK-CAN30的NT驱动的时候,如果不禁止鼠标功能的话,则进入ICE界面调试后,使用X命令,或者F5命令,执行程序,ICE界面关闭后,NT下鼠标变的非常混乱,所以不得不禁止鼠标功能。这是不得已而为之,鼠标在ICE界面中如此之方便,令人不舍得割爱。 其他选项一般可以使用缺省设置。 WINICE的使用简介: WINICE是一个非常复杂和强大的调试工具,其手册重达1000克,在此简要说明WINICE的调试驱动程序的基本步骤。 WINICE的启动和界面的调出: 如果在Startup Mode Setup中设置ICE的启动不是Manual,那么在你看到M$熟悉的界面的时候ICE已经埋伏在系统中了。只需你发出“暗号”即可调出ICE那熟悉(如果你用CODEVIEW调试过DOS程序的话)而陌生的界面,摩拳擦掌调试你那令你又痛又爱的驱动程序了。 启动设置为Manual,那么只能劳您大驾在菜单中选择Start SoftICE,或者在NT的控制台下键入如下命令net start ntice(是不是显得很专业)。 呼出ICE界面的“暗号”。简单之极:CTRL-D。 有一点你一定能够理解,那就是不能用ALT-TAB在ICE界面和其他WIN界面之间进行切换。只有在使用X命令或者F5热键之后才能回到WIN界面。 WINICE最常用的几个命令 X命令,或者F5热键。执行当前程序(当然,很可能当前运行的不是你准备调试的程序,而是系统线程)。如果ICE没有遇到事先设置的断点,ICE界面将消失,重新回到熟悉的Windows界面。 H命令。帮助命令。很有用的命令,但是如果是个新手,还是无济于事,因为列出了太多的命令,你将无处下“爪”。 FILE * 命令。这是一个非常,非常,怎么说呢,如果你在此之前在ICE的“迷宫”里闯荡过而一无所获的,将发现该命令打开了你调试程序的大门。该命令列出了你驱动程序所有的源程序(不包括.H文件)。 你可以继续使用下述命令打开文件: FILE 文件名 到现在为止,你要调试的驱动程序才真正展示在你面前。快动手吧。 LINES 行数 命令。ICE的界面初始设置为25行,标准的DOS界面。一般程序员都觉得不够大。你可以该命令设置界面的高度。 WC [行数] 命令。开启/关闭代码窗口,设定其高度。 WR [行数] 命令。开启/关闭寄存器窗口,设定其高度。 WW [行数] 命令。开启/关闭WATCH窗口,设定其高度。 WD [行数] 命令。开启/关闭数据窗口,设定其高度。 窗口切换: ALT-R:寄存器窗口。 ALT-W:WATCH窗口。 ALT-D:数据窗口。 F6:命令窗口和代码窗口之间切换。 设置断点: 在代码窗口中将光标移动到合适的行。 使用F9热键,在光标所在行设定或者清除断点。 断点的类型有好几种,用法也相当灵活,请参考ICE的手册继续深造吧。 WATCH 变量名 命令: WATHC的设置非常简单,而且变量名称大小写不敏感,这大大方便了驱动程序的调试,因为其中的变量名称又臭又长,还大小写间隔。 热键: F3:源代码、混合、机器代码之间切换 F5:执行 F6:切换命令窗口和代码窗口 F8:单步执行(Step into) F9:设置/清除断点 F10:单步执行(Step over) 有了上述若干命令,你已经可以开着WINICE这辆调试工具中的劳斯莱斯上路了,去和你的驱动程序较劲吧。 |
|
|
板凳#
发布于:2007-10-03 19:39
不错
|
|
地板#
发布于:2007-10-11 11:52
入门很好
|
|