vs2005 + DriverStudio3.2 修改方法

来源:互联网 发布:php正则验证身份证 编辑:程序博客网 时间:2024/05/20 06:10

 其实问题基本都处在DriverStudio3.2的安装和编译上。下面就开始了: 这三个软件的安装顺序是:VS2005、WindowsXP 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。出现这个错误的原因是:DriverStudio 3.2在与VS2005集成的过程中出错了,这个错误我们将在DS3.2安装完成后用补丁修复。 接下来补丁修复。DSDDKEnv.zip解压,

用文件 DSDDKEnv8.dllDSDDKEnv8UI.dll分别替换掉...../DriverStudio/Common/Bin DriverStudio/Common/Bin/1033目录下的同名文件。然后在开始菜单的运行中分别输入以下两条命令:regsvr32 -u <安装目录>\DriverStudio\Common\Bin\dsddkenv8.dll regsvr32 <安装目录>\DriverStudio\Common\Bin\dsddkenv8.dll 注:如果<安装目录>中有空格,那么以上两条命令会执行出错。 这时打开VS2005,其菜单栏的Tools中出现了DriverStudio子菜单。接下来还有以下几个工作要做: 1Tools->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,VdwLibsProperty Pages顶部的Configuration和Platform要分别改成Active(WDM Checked)和win32 Active,这个很重要。   

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

         注2:检查VdwLibsProperty 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:在Project的Property pages里的Link=>Input=>Additional Dependencies项中去掉这个库           2:在Project的source文件中找到这句话,删掉就可以了 哦:TARGETLIBS=$(DDK_LIB_PATH)/ntstrsafe.lib$(DDK_LIB_PATH)/csq.lib。

0 0
原创粉丝点击