驱动程序环境搭配Word格式.docx
《驱动程序环境搭配Word格式.docx》由会员分享,可在线阅读,更多相关《驱动程序环境搭配Word格式.docx(18页珍藏版)》请在冰点文库上搜索。
所以在开发上也还方便,但是在调试上的话,就麻烦了,
在WinDbg中有一大堆东西要设置,在虚拟机上也要设置一些命令,
关于WinDbg+VMware开发调试驱动程序在网上有比较有名的酒若琳的文章,
不过那是很多年以前的文章了,有兴趣的可以去谷歌搜索"
酒若琳WinDbg"
,应该是可以找到那篇文章的。
同时对于这一块的使用,也可以参考笔者的文章《驱动开发–WDK调试及SVN环境搭配》,
博文地址为:
但是在使用DDKWizard+VS2008进行驱动开发时,是不能够直接通过VS2008来调试的
(这里可能有其他门路来实现,但是笔者没有实现过),
而一般都是在WinDbg中设置好符号文件的路径以及源代码的路径,然后再驱动程序的源代码中嵌入一些汇编代码,
当然这些汇编代码只是简单的用来实现一个中断,从而在WinDbg调试器中会生成一个断点。
这样调试起来速度慢,也不好控制,所以有时候觉得在做开发的时候,在调试上花去的时间太多了,会不爽。
在本次博文中,将要介绍的是一个开源项目VirtualDDK(VirtualKD中包含了VirtualDDK),
通过这个开源项目即可以很好的实现在VS2010以及VS2008下直接调试驱动程序,
同时对于VirtualDDK的环境搭配也是很简单的,下面就直接上一些图片以及一些注解来说明,
由于文章存在大量的截图,所以读者只要按着截图来做基本上都是可以成功的。
同时下面给出官网上的一篇关于利用VirtualDDK和VS来调试驱动程序的文章(内容非常详细),
基本上通过笔者的这篇博文和官网上的博文就完全可以搭建驱动程序开发环境成功了!
同时在官网上的环境为VS2008的。
而且在官网的博文中还有两个比较好的驱动例子の!
1.Adummydriverthatsimplyprintsamessagewhenitisloaded.
2.Aramdiskdriver,thatcreatesavirtualharddisk.
《MakingYourFirstDriver–CompleteWalkThrough》
http:
//articles.sysprogs.org/visualddk/firstdriver/
前期设置:
安装虚拟机和VS2010,然后再网络和共享中心中进行一些设置,
设置即是将本地连接网卡,安装虚拟机后生成的两块虚拟网卡的IP地址都改为自动获取IP地址,
同时需要修改一块虚拟网卡的共享属性。
在虚拟机中安装好Windows操作系统并且设置网卡类型为NAT类型
将本地主机开启远程,并且将本地主机的防火墙全部关掉
(这一步,看你运气了,有时候不设置这些东西,在VS2010下也是可以利用VirtualDDK调试驱动程序成功的,
但是你人品不好的时候就难说了,就比如我自己,前些日子不设置这些东西也都可以调试的,
但是这几天死活调不上,结果把上面这两东西设置了就可以调试了,估计是因为VirtualDDK需要UDP来进行调试,
所以,防火墙还是禁用比较好,但是我一直都不明白这个调试和开不开远程有何关系,感觉着不是扯淡嘛)
同样在你的虚拟机操作系统上,我这里安装的是XP,
也一样需要开启远程并且关闭防火墙,理由同上,看你人品了。
检测是否设置成功:
设置好上面这些东西后,我们需要来检测一下,这个检测是必要的,
因为如果你检测没有通过的话,在后面是绝对不可能成功的利用VS2010+VirtualDDK来调试驱动程序的
1.在主机里面Ping虚拟机上的XP操作系统(必须成功)。
2.在虚拟机里面的XP操作系统中Ping本地主机(必须成功)。
3.在虚拟机里面的XP操作系统中通过网上邻居访问本地主机(必须成功)。
下载和安装VirtualDDK:
安装好VirtualDDK后(一般安装在C:
\ProgramFiles\VisualDDK目录下),
可以在该目录下看到一个Target文件夹,
将这个Target文件夹拷贝到虚拟机上的XP操作系统下,并且运行Target文件夹下的vminstall.exe,
然后将虚拟机中的XP操作系统重新启动(安装完vminstall.exe后会提示需要重启系统)。
VS2010创建VirtualDDK项目:
打开VS2010,创建VirtualDDK项目,创建过程如下截图:
创建好VirtualDDK项目后,您可以尝试着生成以下解决方案,可以看到很容易的生成了解决方案,
也会在指定的目录下生成.sys文件和.pdb文件。
调试驱动程序:
开始调试驱动程序:
首先是启动虚拟机中的XP操作系统,等到XP操作系统出现以下界面时(你可以通过上下键来使得30秒倒计时停止),
到VS2010中,完成以下操作:
当出现下面的错误提示时,直接确定忽略,然后重新StartDebug即可
然后再加载我们自己写的这个驱动程序即可,这样就会出现调试界面了,
在虚拟机中也会显示一些消息:
在VBox下调试驱动程序:
在VBox下调试驱动程序其实和在VMware下调试是差不多的,也就是具体的操作和上面的操作基本上是一样的,
但是需要改变一点点东西,
首先定位到VBox的安装目录(C:
\ProgramFiles\Oracle\VirtualBox),
可以在该目录下看到一个VBoxDD.dll,我们需要将这个文件的名字改为VBoxDD0.dll,
改名后,我们再定位到VirtualDDK的安装目录下(C:
\ProgramFiles\VisualDDK\VirtualBox\x86),
并且将该目录下的VBoxDD.dll拷贝到上面的这个目录(C:
\ProgramFiles\Oracle\VirtualBox)下。
至于其他的步骤的话,就和前面在VMware下的操作是一样的了。