位
)
2009-04-07 10:582374 人阅读 评论(2)收藏 举报
转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://dengkeng.blogbus.com/logs/33757789.html
本来用系统自带的 build 命令编译
后来发现 Windows 驱动开发技术详解上说用 VC6 可以编译,一直操作到了最后,一编译居然发现没有编译通过,于是在网上 google 了下,发
现了别人的方法,看到中间的步骤就发现出问题来了,书中的是拿 win2k 的 DDK 做例子,可是装的 XP 的 DDK 是编译有问题的,晕,问题出在
哪里呢?也就是 Directories 的 Executable files 应该把 XP 的 DDK 的 Bin/X86 目录添加进去,不然版本低了编译不了了,书上也没个提示.添
加以后就编译成功了
VC6
位 )
http://blog.csdn.net/linuxpgy/archive/2008/05/11/2434572.aspx
VC6 只是一个 IDE,可以方便的调用编译器,链接器,头文件,库文件,如果编辑和编译驱动能集成在一起,这样可以提高开发效率。
对于普通的 Win32 应用程序,VC6 已经默认支持了,而对于驱动程序没有设定好的工程向导。其实驱动程序也就是一个 sys,是通过 c 语
言写成,所以编译它理论上没有问题,只是在实际操作上有点麻烦。
下面就来说明一下各种平台编译 sys 驱动的方法(包括 64 位平台)
先看 32 位版本驱动的编译方法,首先你得准备一些编译必备工具:
1.要安装 VC6
2.安装 DDK(装哪个呢?这个问题其实很简单的,只是很多人不明白,装 DDK 当然是越新越好了,越新支持的平台越多,像 2000DDK
你是绝对编译不出来 64 位 sys 的,因为它没带 64 位的库和编译器,所以我们选择现在最比较新的,2003DDK(WDK 也可以),支持
的平台很多,AMD64,IA64,2000,XP,2003 都支持)。
好了,这下我们的系统已经安装了最强的开发工具 VC6,最新 DDK,在 VC 里编译各个平台的驱动都没有问题了!
开始,假设我们的 DDK 装在 C:/2003DDK 目录,那么我会发现里面有很多驱动的例子(安装的时候全选),我们选择 C:/2003DDK/
src/wdm/usb/bulkusb 作为我们的实验范例。
第一步:
打开 VC,建立一个 Win32 Application 工程,然后选择 An empty Project(我用英文版的 VC,建议你也换成英文版的),意思就是建立一个
空的 Win32 工程,工程名字就叫 bulkusb,点 Finish.
第二步:
将 C:/2003DDK/src/wdm/usb/bulkusb/sys(这里是驱动代码,另一个 exe 里是用户程序,不管它)里的所有文件拷贝到 bulkusb 工程目
录下。然后把.h,.c,.rc 导入到 VC 里对应的目录里面去。
第三步:
然后就是开始设置工程选项,把这些代码编译成 sys 了。 要编译我们需要 DDK,所以先要在 vc 的 Tool->Options->Directories 里设置一
些路径给 VC 调用(设置基本原则:要保证下面所有设置的路径排在前面)。
设置 Include 路径:
C:/2003DDK/INC
C:/2003DDK/INC/CRT
C:/2003DDK/INC/WNET
C:/2003DDK/INC/DDK/WNET
C:/2003DDK/INC/DDK/WDM/WNET
评论0