分享

Visual Studio2005 Windows XP DDK DriverStudio3.2 安装的一些说明

 昵称570477 2012-01-07

搭建开发环境是开发驱动的第一步,这个搭建的过程还是有点小折腾的,在这儿我遇到的问题记下来,免得日后忘记,也希望可以帮到一些人。

 

其实问题基本都处在DriverStudio3.2的安装和编译上。

下面就开始了:

 

这三个软件的安装顺序是:VS2005、Windows XP DDK、DriverStudio3.2。这是推荐的安装顺序。

 

首先,上网找Windows XP DDK安装程序、DriverStudio3.2安装程序、DriverStudio3.2的补丁DSDDKEnv.zip

         补丁文件我上传了,可以在这儿下http://download.csdn.net/source/2896238

 

默认VS2005已经装好了,然后装DDK,DDK就一路默认装就可以了。

(建议把DDK的所有Example都装上,不然可能以后编译时会缺少头文件之类问题)

 

然后装DriverStudio3.2,也是一路默认安装就可以了(注:安装目录中不要出现空格,原因马上讲到)。

安装过程中会出现一个错误对话框,大概是说DSDDKEnv8.dll failed to register,选Ignore

出现这个错误的原因是:Driver Studio 3.2在与VS2005集成的过程中出错了,

这个错误我们将在DS3.2安装完成后用补丁修复。

 

接下来补丁修复。

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

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

regsvr32 -u <安装目录>\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就生成了。

     

应该到此就安装完成了。大家可以用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:ProjectProperty pages里的Link=>Input=>Additional Dependencies项中去掉这个库

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多