配置windows下驱动开发环境

时间:2023-03-09 00:17:57
配置windows下驱动开发环境

1、下载安装Visual Studio 2008。

2、下载安装WDK 下载地址(点此下载) 建议完全安装,为了便于配置,作者安装到C盘。(C:/WinDDK)

3、 ddkwizards(ddkwizard.exe)  ddkbuild_cmd.zip (DDKBULID.CMD) ddkbuild_bat.zip(DDKBUILD.bat), 下载完成后安装ddkwizard.exe,安装目录默认。解压ddkbuild_cmd.zip ddkbuild_bat.zip,拷贝到安装wdk的根目录(C:/WinDDK)。

4、设置系统环境变量

需要设置的地方有两个

(1)、path
需将C:\WinDDK添加到Path变量中
否则编译时会出现找不到命令的错误

(2)、新建系统变量
变量名:WLHBASE
变量值为:C:\WinDDK\7600.16385.0修改为你安装的wdk路径

变量名:W7BASE
变量值为:C:\WinDDK\7600.16385.0修改为你安装的wdk路径

5、工具->选项->项目和解决方案->VC++目录,增加WDK的根目录。分别在可执行文件里加入C:\WinDDK,在包含文件和库文件增加C:\WinDDK\7600.16385.1即可,增加文件需要手动加入。

配置windows下驱动开发环境

WINDDK抽取文件做USBHID设备开发,编译出现错误及解决方案

问题1:

PASSIVE_LEVEL 未声明

问题描述及解决方案:

此问题出现在WINDDK安装后,只是拷贝相应头文件至工程目录,而没有设置相应WINDDK工程目录。所以解决方案是添加WINDDK目录至VC工程配置,如下。

打开工具->选项->项目和解决方案->VC++目录,(英文版:Tools->Options->Projects->VC++ Directories)在右侧include files 最顶端添加"(DDK目录)\inc\ddk",然后再$(WindowsSdkDir)**的上一行添加"(DDK目录)\inc\api"。即可。

问题2:

_In_ 未声明

问题描述及解决方案:

此问题出现在WINDDK设置好后,问题1解决的前提下。问题是sal.h头文件版本不匹配导致。解决方案就是定位到(DDK目录)\inc\api,然后修改sal.h文件名为_sal.h_即可。这样便不会产生冲突,编译通过。

error C2496: 'GUID_DEVINTERFACE_USBPRINT' : 'selectany' can only be applied to data items with external linkage

不知道怎么解决,文档里其实只是把GUID_DEVINTERFACE_USBPRINT预定义了一下,它的代码预定义就出问题,自己改一个预定义,问题解决。

error C2664: 'strcpy' : cannot convert parameter 2 from 'WCHAR [1]' to 'const char *'

解决方法:

工程->properties(属性)->General(常规)->project defaults(项目默认值)->character set(字符集设置)->use Multi-Byte Character Set(多字符集)