通过在网上搜索大量的资料,终于把环境搭建起来。对于我这样的驱动新手来说,理应把高手们的东西整理并总结下,方便以后的初学者。

这三个软件的安装顺序没有具体规定,也有高手推荐的顺序,我自己也是重复安装卸载,个人的顺序是:VS2005、DriverStudio3.2、Windows XP DDK。个人觉得后面两个的安装顺序关系不大。

1.VS2005本人安装的英文版,可以在网上下载。

2.DriverStudio3.2 和Windows XP DDK可以百度搜,由于个人的上传上限为60M,不能上传到CSDN,所以大家可以在网上下载。

3.DriverStudio3.2的补丁DSDDKEnv.zip,这个我上传了,可以在我的资源中找到。

安装过程中容易出错的地方说明:

1.在安装DriverStudio3.2,会提示一个ERROR 1904  module的错误,在这里点击ingore就行。

2.另外DriverStudio3.2选择安装路径时不要有空格,本人在刚开始安装时没注意直接选择了D:\program files路径导致后来又重新安装。

3.安装DDK时,会弹出一个下面对话框,要把列表中的全部勾选。

全部安装完成后,接下来就是补丁修复

把下载的DSDDKEnv.zip解压,用文件DSDDKEnv8.dll、DSDDKEnv8UI.dll分别替换掉...../DriverStudio/Common/Bin和DriverStudio/Common/Bin/1033目录下的同名文件。

然后在开始菜单的运行中分别输入以下两条命令:

regsvr32 -u <安装目录>\DriverStudio\Common\Bin\dsddkenv8.dll,

例如本人输入的为:regsvr32 D:\driverstudio\Compuware\DriverStudio\Common\Bin\dsddkenv8.dll

regsvr32 <安装目录>\DriverStudio\Common\Bin\dsddkenv8.dll

注:如果<安装目录>中有空格,那么以上两条命令会执行出错。

这时打开VS2005,其菜单栏的Tools中出现了DriverStudio子菜单。接下来还有以下几个工作要做:

1:Tools->DriverStudio->DDK Build Settings设置DDK路径,即将DDK Root Directory设置为C:/WINDDK/2600(根据自己的安装路径修改)

2:生成vdw_wdm.lib,这个库文件在以后编译驱动时是需要的。过程如下:

首先,用VS2005打开..../DriverStudio/DriverWorks/source/VdwLibs2005.sln;

将VdwLibs设为Active Project;

然后右击VdwLibs->Properties,VdwLibs Property Pages顶部的Configuration和Platform要分别改成Active(WDM Checked)和win32 Active,这个很重要。

注1:这个一定要改对!!不然生成的vdw_wdm.lib是错误的,错误的库会导致以后编译驱动时出错,很烦的。

注2:检查VdwLibs Property Pages->Librarian中的Output File是否为$(OutDir)/vdw_wdm.lib,如果不是,就改成这个。

最后编译工程(用Tools->DriverStudio->Build Solution),vdw_wdm.lib就生成了(请确认\DriverStudio\DriverWorks\lib\i386\checked目录下有生成)。

应该到此就安装完成了。大家可以用VS2005打开.../DriverStudio/DriverWorks/Examples/wdm中的一个例程,比如hellowdm。然后用菜单栏的Tools->DriverStudio->Build Solution with DDK Build.exe。如果生成正确,即在.../DriverStudio/DriverWorks/Examples/wdm/hellowdm/sys/objchk/i386中出现了HelloWdm.sys,那么就大功告成了,配置好了。

接下来我们用Tools->DriverWizard生成驱动模板(具体怎么生成大家自己研究吧^_^)

驱动工程文件生成后,同样用Tools->DriverStudio->Build Solution with DDK Build.exe编译时,

会出现这个错误:1>NMAKE :  U1073: don't know how to make 'C:/WINDDK/2600/lib/wxp/i386/ntstrsafe.lib'

出错原因是:根本就没有C:/WINDDK/2600/lib/wxp/i386/ntstrsafe.lib这个库文件,这貌似是DS3.2的bug

解决办法是:1:在Project的Property pages里的Link=>Input=>Additional Dependencies项中去掉这个库

2:在Project的source文件中找到这句话,删掉就可以了哦:TARGETLIBS=$(DDK_LIB_PATH)/ntstrsafe.lib $(DDK_LIB_PATH)/csq.lib。

VS2005+WINDDK+Driver Studio 3.2个人总结的更多相关文章

  1. VC/DDK/DriverWorks开发环境配置

    1·前言开发windows内核驱动程序是一个非常具有挑战性的工作,你得忍耐调试过程中操作系统 不断蓝屏.不断崩溃的噩梦,所以强烈建议你采用虚拟机做开发平台,这样即使把整个系统都搞蹦了,大不了从新装过虚 ...

  2. iis浏览网页时提示无法显示 XML 页

    无法显示 XML 页.         使用 样式表无法查看 XML 输入.请更正错误然后单击 刷新按钮,或以后重试.          处理资源 'http://localhost/ 时出错.第 1 ...

  3. VS05 VS08 VS10 工程之间的转换

    VS05 VS08 VS10 工程之间的转换 安装了VS2010后,用它打开以前的VS2005项目或VS2008项目,都会被强制转换为VS2010的项目,给没有装VS2010的电脑带来不能打开高版本项 ...

  4. 9030PCI CAN驱动开发点滴

    1.配置EEPROM. 使用PlxMon打开9030,基本修改Spacex(0,1,2,3), Chip selectx(0,1,2,3), 中断状态INTCSR(0x74), 其他(0x78),详细 ...

  5. 深入linux kernel内核配置选项

    ============================================================================== 深入linux kernel内核配置选项 ...

  6. Visual Studio 2012,创建工程Build Driver,基于纯Source Code.

    拿到一堆纯代码,怎么去Create Project,设置Include路径,lib路径,要不要Pre-compile技术,配置Project之间的依赖关系. SourcesConverter  Bas ...

  7. Atitit. visual studio vs2003 vs2005 vs2008  VS2010 vs2012 vs2015新特性 新功能.doc

    Atitit. visual studio vs2003 vs2005 vs2008  VS2010 vs2012 vs2015新特性 新功能.doc 1.1. Visual Studio2 1.2. ...

  8. Visual Studio快捷键 [VS2008/VS2005]快捷键

    VS系统通用快捷键: 1.自动排版(类似VC6中的Alt+F8) 编辑.格式化选定内容 Ctrl + K,Ctrl + F 根据周围的代码行,正确缩进选定的代码行. 2.注释与去掉注释功能. 编辑.注 ...

  9. Visual Studio解决方案vs2005/vs2008/vs2010/vs2012/vs2013/vs2015版本互相转换工具

    原文:http://blog.csdn.net/xiejiashu/article/details/52397641   本文转自EasyDarwin团队成员Alex的博客:http://blog.c ...

随机推荐

  1. python自定义排序函数

    Python内置的 sorted()函数可对list进行排序: >>>sorted([36, 5, 12, 9, 21]) [5, 9, 12, 21, 36] 但 sorted() ...

  2. HTML+CSS笔记 CSS入门

    简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...

  3. bmfont制作数字

    http://blog.csdn.net/z104207/article/details/20136401

  4. JVM典型配置

    堆大小设置: JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理内存 限制.32位系统下,一般限制在1.5G~2G:64为 ...

  5. 大数据情报分析公司Palantir

    最近在学习图数据计算方面技术,在寻找现实应用时发现美国Palantir公司已将所谓的多源异构数据融合分析技术运用的炉火纯青.Palantir创立于2004年,最早是因PayPal公司为保障支付安全而逐 ...

  6. 射频识别技术漫谈(22)——RC系列射频芯片的寄存器操作

    前面提到,RC系列内部64个寄存器的正确操作是软件编写的关键.正确设置寄存器首先要做到与寄存器正确通信,其次是要对寄存器写入正确的值. RC系列射频芯片与微控制器的接口有并口和SPI接口两种类型.显然 ...

  7. Java学习之DAO设计模式

    DAO设计模式是一个javaEE里的设计模式,DAO是Data Access Object 数据访问接口. 一个典型的DAO实现有三个组件: 1.一个DAO接口 2.一个DAO接口的具体类: 3.数据 ...

  8. 在js中获取query string 以及重写URL的函数

    函数用途:如标题.1. 从URL中解析出參数,2.重写URL中的參数值 例如以下代码所看到的.包括了測试.能够直接copy到浏览器中,输入測试地址:localhost:xxx?a=1&b=2& ...

  9. BFG

    "/"应用程序中的服务器错误. 配置错误 说明: 在处理向该请求提供服务所需的配置文件时出错.请检查下面的特定错误详细信息并适当地修改配置文件. 分析器错误消息: 提供程序集合中不 ...

  10. Html.ActionLink(转载)

    @Html.ActionLink 代码: <h2>HtmlHelper</h2>@Html.ActionLink("默认","Index" ...