首页
社区
课程
招聘
[旧帖] [原创]Windows驱动开发环境搭建详细记录 0.00雪花
发表于: 2013-6-14 15:28 1507

[旧帖] [原创]Windows驱动开发环境搭建详细记录 0.00雪花

2013-6-14 15:28
1507
刚接触驱动的时候搭环境费了好多周折,七找八搜的才算搭起来个健康能运行的环境,不知道看雪有没有我这么菜的选手,在这个露个丑,把搭建的详细过程记了下来,如果有像我一样的小菜,希望能对你有所帮助,节省点时间。
1.需要软件:VMware、Visual Studio、WDK以及官网的ddkbuild.bat和ddkbuild.cmd两个文件、DDKWizard、INSTDRV、DebugView,后两个软件是做调试用。

关于为什么要在虚拟机上开发,我的亲身实践,如果怕麻烦不建虚拟机,结果只能是更麻烦,所以。。。

2.首先安装VMware,在上面安装个XP系统,搭好环境后最好备个份,新手搞驱动开发很容易让系统崩溃的。

3.在虚拟机的XP系统上安装Visual Studio、WDK后,在WDK的安装目录:C:\WinDDK\7600.16385.1下创建一个bat文件夹,将ddkbuild.bat,ddkbuild.cmd放进去。然后安装DDKWizard,我把目录也安装在了C:\WinDDK\7600.16385.1下。

4.软件安装完毕,添加以下两个系统环境变量,右键我的电脑-属性-高级-环境变量。



5.配置Visual Studio,工具-选项-项目和解决方案-VC++目录,添加项的顺序不可随意,编译出现解析符号、重定义等相关问题很可能是顺序有误或者包含文件多了或少了;
可执行文件,添加以下几项,后三项一定要加上,否则编译的时候会报错:


包含文件,添加以下几项:


引用文件,添加以下几项:


库文件,添加以下几项:


源文件,添加以下一项:


6.如果前面的都弄好了,就可以创建驱动程序了,方法如下,新建项目会发现多了一个选项DDK Project,就是驱动项目了,右面选择Driver,确定;


这时出现如下界面,选择Windows XP DDK,Finish即可。


7.编辑你的驱动代码,此处我只在DriverEntry函数中添加了最简单的一句:DbgPrint("my driver test");
启动调试即可,调试会出现如下对话框,点击取消即可,我们调试的目的是生成sys文件:


8.如果以上都成功,会在项目文件夹下生成objchk_win7_x86\i386下生成sys(扩展名)文件。
9.添加注册表项,打开HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager,新建项Debug Print Filter,在其下面新建DWORD值,名称DEFAULT,数据0x0000000f,不添加这个在DebugView上看不到打印信息。
10.下面就是测试了,打开DebugView,注意Capture下的Capture Kernel要选中,否则会看不到运行结果。


运行InstDrv,添加刚生成的sys文件的完整路径如下图,先点击安装,再点击执行


如果成功在DebugView中会看到如下结果


这样,第一个驱动程序就运行成功啦。
附:也可用WinDbg进行双机调试,不过我觉得用DebugView比较简单方便,当然如果你需要更细节的调试信息就得用WinDbg了。

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//