boywhp
驱动中牛
驱动中牛
  • 注册日期2007-08-09
  • 最后登录2015-04-24
  • 粉丝2
  • 关注0
  • 积分1105分
  • 威望515点
  • 贡献值0点
  • 好评度254点
  • 原创分1分
  • 专家分0分
阅读:1322回复:0

使用虚拟机+SoftICE进行源码级驱动调试【入门】

楼主#
更多 发布于:2007-08-22 11:34
一、准备工具
操作系统:  Win2000SP4
虚拟机:    VMWare5.5
SoftICE:   DriverStudio3.2自带的SoftICE
二、安装注意事项
win2000sp4的安装略过
VMWare5.5
1、VMtools会对SoftICE有影响,导致无法Ctrl+D呼出SoftICE
2、如果你已经安装了VMTools,可以在虚拟机的控制面板->添加删除程序 删除;-)
3、如果你的VMWare同我一样是用的精简版,可能在主文件夹下没有windows.iso文件,只需要Copy一个到主目录下即可,你可以通过指定 VMWare的光驱加载此iso镜像文件即可。然后在VM系统下,打开光盘,手动安装(或者在进入VM系统后,通过VM主菜单【虚拟机】->安装VMWare工具)。
4、安装VMTools时候选自定义,不要安装其鼠标驱动,一般只安装显卡驱动即可。
DriverStudio3.2
1、我用的是一个破解版的,需要使用License文件,记得将License文件保留在你的VM操作系统中。
2、可以通过CompuWare->License Administration->License Administration Utility指定License文件
3、此时应该可以通过菜单Start SoftICE启动SoftICE,用Ctrl+D呼出。Symbol Loader应该也可以启动。
三、调试设置
1、编译驱动文件,需要安装好2000DDK,我使用的是DriverWizard【生成vc6工程文件以及编译选项】+WDMBuild工具【对驱动进行编译,加载,卸载和执行等】。注:需要使用check版本进行调试。
2、WDMBuild工具应该在虚拟机中Copy一个,但是要设定一下路径。我们在VM中主要用此来执行编译好的驱动文件。强烈建议你在虚拟机中要调试的目录跟实际编译驱动机器的目录相同,例如:
开发机目录
DDK目录 D:\NTDDK
源码    D:\whp\Project\DD1\
那么建议VM也建一个类似的调试目录,如E:\whp\Project\DD1\
将编译后的objchk文件夹+源码一起复制到对应的VM目录中即可,记得不要改变目录层次结构。
3、运行Start SoftICE,然后运行Symbol Loader,file->open,文件类型选sys
4、注意Symbol Loader的工具栏,选上第
   8[Translation symbols and  source]
   9[package source]
   10[promnt for source]!!!!
   11[load symbols only]个工具按钮。
5、执行Tranlate(Ctrl+T)【moudle ->Tranlate】,应该没有错误提示才是
6、执行Load Moudle(Ctrl+L)【moudle ->Load】,此时在窗口中应该可以看到你的驱动
7、Ctrl+D呼出SoftICE,输入lines 可以调整SoftICE的高度,输入file即可看到你的源文件列表
8、下断点,输入 bpx DriverEntry即可在驱动入口下一个断点,然后Ctrl+D隐藏SoftICE。
9、在VM中打开WDMBuild,设定好路径后(NTDDK可以自己建一个),Install然后start驱动
10、此时SoftICE会跳出来,输入src命令,可以在源码、汇编来回切换。

新人第一次发帖,刚学驱动开发,希望大家多多照顾;-)
游客

返回顶部