SoftICE for WIN95中文命令解说(二)

 SoftICE for WIN95中文命令解说(二)
Copyright (c) 1999 http://coobe.cs.hn.cninfo.net/~tianwei

命令: BC
作用: 清除一个或多个断点
语法: BC list | *
用法:
清除断点后,用BL命令就看不到断点列表, 且被清除的
断点不再起作用.
参数:
list: 可以是将要清除的一系列断点,中间用空格或逗
号隔开.
* : 清除所有的断点.

点评: BC==Breakpoint Clearing

命令: BD
作用: 使一个或多个断点失效
语法: BD list | *
用法:
使某个断点失效不同与 BC 命令的清除,暂时失效的断
点可以用 BE 命令来恢复.而 BC 命令是彻底清除.
参数:
list: 可以是单个,也可以是一系列断点, 中间用空格
或逗号隔开.
* : 禁止所有的断点.

点评: BD==Breakpoint Disablling

命令: BE
作用: 使一个或多个断点恢复有效
语法: BE list | *
用法:
用来恢复前次用 BD 命令使之失效的断点. (每当新定
义断点或编辑断点时,系统自动将其置为有效)
参数:
list: 可以是单个,也可以是一系列断点, 中间用空格
或逗号隔开.
* : 恢复所有的断点.

点评: BE==Breakpoint enablling

命令: BH
作用: 在SoftICE历史数据库中显示或是选择曾经设过的断点
语法: BH
用法:
用BH命令后,SoftICE将显示一个表,每一行是一个断点
,都是以前使用者曾经下过的断点, 这时可以用上下光
标键来定位,用INSERT键选择,再用ENTER键来确定. 用
ESC键取消.SoftICE只记录最近的32个断点. 而且只在
WIN95正常退出后记录(记录到WINICE.BRK中), 这样就
有一个问题.如果你在MSDOS.SYS配置中是BootGUI=1的
话(即最正常的启动方式),当你SHUT DOWN机器时,控制
并不回到SoftICE手中,就无法记录刚才的断点.这时只
有改为BootGUI=0.

点评:
注意:SoftICE只在SHUT DOWN时记录,如果你用"重新启
动并切换...",那是不行的.至少在我的V3.20是不行的
.而且,如果你"重新启动并切换...", 再用EXIT命令想
退回到WIN95,很容易出现VxD联接错.因为这样 WINICE
并没有完全退出内存,用 MEM.EXE可以看到这点.所以,
SoftICE的使用者最好在MSDOS.SYS中将上面所说的Boo
-tGUI置为0.如果怕这样用多重配置的话还要每次开机
敲一个WIN,可以在AUTOEXEC.BAT中改动,加入WIN.COM.
(可不要在WINICE.EXE后再加WIN.COM!画蛇添足!)
若用SoftICE次数不多的话, 可以每次启动WINDOWS后,
再重新启动并切换到MS-DOS方式,再打WINICE.EXE, 这
样也可以的. BH的好处是,可以省去纸笔, 下次重调试
这个程序时,不用再挖空心思想断点了.


命令: BL
作用: 显示当前所设的断点
语法: BL
用法:
BL 命令显示当前所有断点的序号 (这个序号被BC BE
BD 等命令所用),类型,是否被禁止等信息.如果是被禁
止的断点,会在序号后跟一个"*"号.比如用上面提到的
BD 命令会产生这种效果)

点评: BL==Breakpoint listing

命令: BMSG
作用: 在WIN95的消息上下断点
语法: BMSG window-handle [L] [begin-msg [end-msg ]]
[IF expression][DO "command1;command2;..."]
用法:
window-handle: 消息发向的窗口句柄
begin-msg : 消息标识字的范围,如果没有end-msg
,那么只在begin-msg上下断点, 否则
在区域内所有消息都会被下断点
end-msg : 见上.
IF-expression: 表达式的值为真时,SoftICE才弹出.
DO "command1;command2;...":
当到达断点时,执行的一系列SoftICE
命令.
L : 表示不弹出SoftICE,而是在命令窗口
中记录WIN95消息.

上面只有窗口句柄是必需的,其他都是可选项. 如果没
有指定在哪个MSG上下断点, 那么所有发向该窗口的消
息都会被拦截.窗口句柄可以用HWND命令来观看,MSG标
识符可以用 WMSG 命令来察看,可以是16进制的数, 也
可以用习惯的书写方式,如:WM_CREATE.SoftICE弹出后
,会停在处理该消息的过程的第一句代码上.

点评:
BMSG=(set)Breakpoint on MeSsaGe
WINDOWS本身是由消息驱动的, 所以跟踪一个消息会得
到相当底层的答案,我主页上一篇"修改RICHWIN4.3"的
文章就是一个例子.


命令: BPE
作用: 编辑一个已存在的断点.
语法: BPE index_number
用法:
index_number: 断点的序号,用 BL 命令可以看到.
用BPE命令可以很方便地修改一个已经存在的断点, 但
要注意一点: BPE 在执行时,会先将你所要修改的断点
清除,然后再将改过的使能,如果你在修改时按ESC键退
出修改,那么原先的断点也就不存在了, 修改错误的结
果也是一样的.原先的断点消失.

点评: 参见后面的 BPT 命令.

目录: 本手册的功能 读者对象 本手册的组织结构 排版风格 如何使用本手册 其它相关文件 (外国人就是罗嗦,为了求全,只好随他了。) 第一章 欢迎使用SoftICE 产品概况 介绍SoftICE 介绍Symbol Loader 如何得到客户服务 联系NuMega公司的技术支持中心 第章 安装SoftICE 介绍 硬件和软件要求 SoftICE显示选择 安装之前 安装 安装之后 配置BOOT。INI以便在多处理器系统中支持单CPU 配置SoftICEWindows 95下正确载入 通过串行口连接第台计算机 解决显卡问题 第三章 SoftICE教程 介绍 载入SoftICE 构造GDIDEMO样本程序 装入GDIDEMO样本程序 控制SoftICE屏幕 通过源码跟踪和逐步调试 读本地数据 设定断点和目标断点 设定一个断点 设定STICKY断点 (此处不知STICKY作何解释。待我读到此处时大概会明白) 使用SoftICE命令行信息 使用符号和符号表 设定条件断点 设置BPX断点 编辑断点 设定读写内存断点 第四章 将代码装入SoftICE 调试的概念 准备调试程序 准备调试设备驱动程序和VxDs(虚拟设备驱动程序) 手工装入SoftICE 装入SoftICE for Windows 95 装入SoftICE for Windows NT 构造带有调试信息的程序 使用Symbol Loader转换和载入文件 修改模块设定 修改通用设定 修改编译设定 修改调试设定 指定程序的源文件 删除符号表 在DOS命令行里使用Symbol Loader 使用Symbol Loader的命令行工具 NMSYM命令行的语法 使用NMSYM来转换符号信息 使用NMSYM来装入模块和符号信息 使用NMSYM来装入或导出符号表 使用NMSYM卸载符号信息 使用NMSYM来保存历史记录 关于NMSYM的信息 第五章 SoftICE导航 介绍 呼出SoftICE窗口 启动时禁用SoftICE 使用SoftICE窗口 调整窗口大小 控制窗口 拷贝和粘贴数据 用鼠标输入命令 得到帮助 使用命令窗口 滚动窗口 键入命令 重呼命令 使用运行时宏 将命令窗口的历史缓存保存到文件 相关命令 控制代码窗口 读信息 在代码窗口键入命令 使用本地窗口 控制本地窗口 扩展和分解堆栈 相关命令 使用观察窗口 控制观察窗口 设定观察表达式 读信息 扩展和分解类型表达式 相关命令 使用寄存器窗口 控制寄存器窗口 读信息 编辑寄存器和标志位 相关命令 使用数据窗口 控制数据窗口 读信息 改变内存地址和格式 编辑内存 辅助表达式 相关命令 第六章 使用SoftICE 在跟踪错误时调试多个程序 跟踪错误 Ring-3 32位保护模式(Win32程序) Ring-0 驱动代码(内核模式设备驱动程序) Ring-3 16位保护模式(16位Win程序) 地址内容 使用INT 0x41 .DOT命令 理解从R-3到R-0的转变 第七章 使用断点 第八章 ----------------------------------------------------------- (...很累人那!今天就这些了吧.因为我也是读一些翻译一些,所以有些"向前引用 "的名词术语不知道要如何解释其意义.应该读完再翻译比较好...不过那个时候我 又开学了...呜...一点时间也没有了!) 第七章 使用断点 介绍 SoftICE所支持的断点类型 断点选项 执行断点 内存断点 中断断点 I/O断点 窗口消息断点 理解断点的含义 虚断点 设置断点活动 条件断点 条件断点计数功能 在条件表达式中使用本地变量 在条件断点里引用堆栈 参考 多重断点 所用时间 断点统计 在表达式中引用断点 维护断点 使用内嵌断点 第八章 使用表达式 表达式 操作符 操作符优先级 形成表达式 表达式类型 定制类型 取得符号的数值 间接使用符号 第九章 装入系统组件符号 装入由DLL和EXE文件导出的符号表 使用未命名的入口点
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值