您的位置:首页 > 编程语言 > C语言/C++

配置VC++6.0下驱动程序编译环境的步骤

2013-01-22 17:41 169 查看
原文链接:http://hi.baidu.com/huihuiqi2010/item/6bde40325e6ed797b80c03e0

操作系统:VMware 6.0 + Windows XP sp1/sp2

DDK版本:Windows DDK 3790.1830

编译环境:Microsoft Visual C++ 6.0 With SP6

1、 新建Win32 Application工程

2、 Build->Configurations去掉Debug和Release,添加MyDriver_Check

3、 添加.h和.c文件

4、 Project->Settings

[General]将Intermediate files和Output files改为MyDriver_Check

[C/C++]将原有的Project Options内容全部删除,替换成如下内容:

/nologo /Gz /MLd /W3 /WX /Z7 /Od /D WIN32=100 /D _X86_=1 /D WINVER=0x500 /D DBG=1 /Fo"MyDriver_Check/" /Fd"MyDriver_Check/" /FD /c

[Link]将原有的Project Options内容全部删除,替换成如下内容:

ntoskrnl.lib /nologo /base:"0x10000" /stack:0x400000,0x1000 /entry:"DriverEntry" /subsystem:console /incremental:no /pdb:"MyDriver_Check/HelloDDK.pdb" /debug /machine:I386 /nodefaultlib /out:"MyDriver_Check/HelloDDK.sys" /pdbtype:sept /subsystem:native /driver
/SECTION:INIT,D /RELEASE /IGNORE:4078

5、 Tools->Options

[Directories]

Include files中添加:

C:\WinDDK\3790.1830\inc\crt

C:\WinDDK\3790.1830\inc\w2k

C:\WinDDK\3790.1830\inc\ddk\w2k

并且置于最上面

Library files中添加:

C:\WinDDK\3790.1830\lib\w2k\i386

并且置于最上面

6、再次编译,编译成功!

--<补充>--

今天用VC++ 6.0编译《Windows驱动开发技术详解》第15章test7的时候,编译环境配置和上面一致,但是报链接错,就像这样:



我以为是C和C++之间符号的区别问题,发现也用了extern "C"啊!有网友说是我的人品问题,郁闷~!后来我随便在[Link]选项里加入了一个Wdm.lib,链接居然就通过了,莫非操作端口这套函数在Wdm.lib里?于是,我打算把本文第4条里的[Link]最前面加Wdm.lib。

驱动开发书籍:《windows wdm 设备驱动程序开发指南》

《PCI设备开发宝典》

驱动开发网 http://www.driverdevelop.com/first.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: