一、开发工具下载
vs2008的下载地址
http://download.microsoft.com/download/e/7/7/e777851c-c1a4-4979-86b3-6886953b32e9/VS2008ProEdition90DayTrialCHSX1435983.iso
二、环境配置
1)新建一个空的 win32控制台程序, 选菜单栏(文件→新建→项目→Visual C++项目→win32→win32控制台项目)创建一个空的项目。
2)选菜单栏(工具→选项→项目和解决方案→VC++目录)下
a)在可执行文件目录中添加:
D:\WINDDK\2600\bin\x86
b)在包含文件目录添加如下路径
D:\WINDDK\2600\inc\wxp
D:\WINDDK\2600\inc\ddk\wxp
D:\WINDDK\2600\inc\crt
D:\WINDDK\2600\inc\ddk\wdm\wxp
c)在库文件目录中添加:
D:\WINDDK\2600\LIB\WXP\I386
3)新建项目配置Check(菜单栏→生成→配置管理器)
4)右击项目名称→属性
a)C/C++属性设置
1、常规选项卡
调试信息格式 (C7兼容(/Z7)
警告等级 (2级(/W2)
将警告视为错误 (是(/wx)
2、优化选项卡
预处理器 WIN32=100;_X86_=1;WINVER=0x501;DBG=1
启用最小重新生成: 否
基本运行时检查: 默认值
运行时库: 多线程调试(/MTd) 或 多线程(/MT)
缓冲区安全检查: 否
3、高级选项卡
调用约定 __stdcall(/Gz)
b)链接器
1、常规选项卡
输出文件 $(OutDir)\$(ProjectName).sys
启用增量链接: 否(/INCREMENTAL:NO)
2、输入
附加依赖项 ntoskrnl.lib wdm.lib
3、清单文件
启用用户账户控制(UAC) 否
4、系统
子系统 控制台(/SUBSYSTEM:CONSOLE)
驱动程序 驱动程序(/DRIVER)
5、高级
入口点DriverEntry
随机基址默认值
数据执行保护(DEP) 默认值
基址 0x10000
6、命令行
附加选项 /SECTION:INIT,D /IGNORE:4078
三、错误
cl : Command line warning D4002 : ignoring unknown option '/errorReport:prompt'
cl : Command line warning D4024 : unrecognized source file type '?', object file assumed
LINK : fatal error LNK1104: cannot open file '?.exe'
觉的是本机的环竟有问题,后来不断的尝试发现去掉(工具→选项→项目和解决方案→VC++目录)
在可执行文件目录中去掉前面添加(D:\WINDDK\2600\bin\x86)
这项后发现能编译通过, 编译的驱动能正常运行.