VS2008 PRO 、WDK 和DDKWizard搭建XP驱动开发环境

这里详说下XP的,修改了上面那篇, 也做个记录,开始研究驱动了,VC++也要学好!

标题:VS2008 PRO 、WDK 和DDKWizard搭建XP驱动开发环境
作者:Jesses
时间:2009.12

一下引用了作者:eping的文章内容并根据我的环境做了修改。

说明:pediy 有篇VS2008、DDK XP和DDKWizard搭建驱动开发环境的文章。作者为bleyes ,本人在搭建vista驱动开发环境时遇到了些问题..故对其再做一些总结....希望后来的读者遇到有跟我同样的问题时能少走弯路.......在此向前作者表示感谢!
一、安装VS2008(我用的是专业版+SP1,速成版本就免了)
二、安装Visual Assist (这不是必需的,我后来装了,似乎启动变慢不少)但它确是我们开发时不可多得的好工具
三、安装WDK
下载WDK及安装细节省略 NEXT就行,如果路径不是默认安装C盘,需要修改DDKWizard 配置文件。
四、安装DDKWizard
下载地址:http://ddkwizard.assarbad.net/
需要下载的文件有
1、ddkwizard_setup.exe
2、ddkbuild_bat.zip
3、ddkbuild_cmd.zip
安装第一个文件跟安装普通程序一样只需要按默认设置即可
2、3两个文件只需要解压copy到我们的wdk所有的根目录即可
如图:


接下来的我们便要设置环境变量了
需要设置的地方有两个
1、path :系统变量
需将G:\WinDDK添加到Path变量中
否则编译时会出现找不到命令的错误
新建系统变量
变量名:WLHBASE ,图中我加了两个,只需第一个即可。
变量值为:G:\WinDDK\7600.16385.0 修改为你安装的wdk路径
如下图




w7:


五、打开VS2008Tools(工具)——>Options(选项)——>Projects and Solutions(项目和解决方案)中的VC++ Directories (vc++目录)增加WDK的根目录如图:到目此所有的设置工作都已完成。自定义安装DDK目录的修改DDKW文件内容 替换c:\WINDDK\ddkbuild.cmd为你DDK安装路径,另替换系统对应支持DDK目录,我的安装了最新的WINDOWS7的DDK,替换 六 中第二图所示。

如下图





六、编写简单的驱动程序并测试我们的驱动开发环境1、新建一个project选择DDK Project 中的 Empty driver如图接下来会跳了一个DDKWizard向导的一个对话框如图

W7:

替换默认路径c:\WINDDK\ddkbuild.cmd为自定义G:\WINDDK\ddkbuild.cmd


替换默认路径c:\WINDDK\7600.16385.0 -》g:\WINDDK\7600.16385.0



这里可以保持默认设置 我这里修改了ddkw的默认设置G:\Program Files\DDKWizard\Wizards\Driver\HTML\1033\default.htm的内容

Which <u>D</u>DK(s)/WDK(s) do you want to use:</label><br />

<select size="4" id="DDK_CHOICE_LISTBOX" multiple="multiple" style="width:70%;">

<option value="3" >Windows 7/2008 Server R2 WDK</option>

<option value="2">Windows Vista/2008 Server WDK</option>

<option value="1">Windows 2003 DDK</option>

<option value="0" selected="selected">Windows XP DDK</option>

</select>

就是<option value="0" selected="selected">Windows XP DDK</option>

其他配置(转):对于原版的那个,另我不爽的有以下几点:

1,默认cpp,虽然可以改,但是还要点一下。
2,默认选中Create PREfast configuration,不爽。
3,默认选中两个ddk,不爽。
4,代码太乱了。
5,东西太杂了。


开始搞。

1,使其默认不选中" Stricter type checking (.cpp)"
打开DDKWizard目录下的DDKWizard.ini文件,做如下修改:
checkbox.STRICTERCPP的值为false。

2,不选中“Create PREfast configuration”
打开DDKWizard.ini
做如下修改:
checkbox.PREFASTCONFIG = false
checkbox.PREFASTCONFIG_ONLYCHECKED = false

3,使其只选中一个ddk
用记事本打开Wizards\Driver\HTML\1033\Default.htm
搜索一下“longhorn”,然后做如下修改:
<option value="0">Windows 2000 DDK</option>
<option value="1">Windows XP DDK</option>
<option value="2">Windows 2003 DDK</option>
<option value="3" selected="selected">Longhorn/Vista WDK</option>

4,5 修改模板
默认模板在Wizards\Driver\Templates\1033下,形式比较简单,自行参考原版进行修改即可。
需要添加删除文件修改Templates.inf中的相应文件即可,很是方便。


这样搞完以后,就可以一键生成自己熟悉的驱动模板,很爽。
Finish 后就可以开始写我们的驱动程序了
这里为了演示..我们什么也不做只打印输出"HelloEping"
简单驱动程序代码如下
注意保存为*.c格式 我这里保存为test.c

复制代码
#include<ntddk.h>
VOID DriverUnload(PDRIVER_OBJECT driver)
{
DbgPrint("HelloEping\r\n");
}
NTSTATUS DriverEntry(PDRIVER_OBJECT driver,PUNICODE_STRING reg_path)
{
DbgPrint("Hello,Eping!");
driver->DriverUnload=DriverUnload;
return STATUS_SUCCESS;
}



注意:sources文件中TARGETTYPE= 默认生成的代码
需要改为TARGETTYPE=DRIVER SOURCES=默认也为空 我把它改成SOURCES=test.c即可成功编译出 否则编译成功后你会发现找不到驱动文件
图释: 这个图中的我这里不需要改了,不知道为什么。不过SOURCE默认是项目中的源文件后缀CPP,如果修改了为C那就要改下了。


在D:\Users\Eping\Desktop\TestDriver\TestDriver\objchk_wlh_x86\i386生成的驱动文件TestDriver.sys
如图

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值