在网上看到VS2008的,好像多了些细节东西~转载过来分享一下
注D:/WinDDK/7600.16385.0/是作者的安装目录,大家随机应变,现在好像已经是WinDDK/7600.16385.0
1、用VS2008创建一个Win32控制台应用程序,在“附加选项”处勾选“空项目”
2、打开配置管理器,新建配置一个配置如Check,把Check设为活动的。注意不要使用Debug或Realse,否则后面会出现奇怪错误。
====================================================================================
3、打开项目配置,点击c/C++页
4、常规选项卡: 附加包含目录:
D:/WinDDK/7600.16385.0/inc/crt;
D:/WinDDK/7600.16385.0/inc/api;
D:/WinDDK/7600.16385.0/inc/ddk
(注:上面分别是CRT,Api,ddk的目录,这个要看驱动开发包安装在哪里)
调试信息格式: C7兼容(/Z7) 用Z7模式产生调试信息
取消显示启动版权标志: 是(/nologo) (默认)
警告等级: 3 级(/W3)
将警告视为错误: 是(/WX)
5、优化选项卡: 优化: 禁用(/Od)
6、预处理器选项卡: 预处理定义: WIN32=100;_X86_=1;DBG=1
7、在高级选项卡:调用约定: __stdcall (/Gz)
----------------------------------------------------
8、进入链接器页
9、常规选项卡: 修改输出文件的扩展名为 .sys
启用增量链接: 否
附加库目录: D:/WinDDK/7600.16385.0/lib/crt/i386;
D:/WinDDK/7600.16385.0/lib/wxp/i386 (视使用的系统用不同目录下的i386)
10、输入选项卡: 附加依赖项: wdm.lib $(NOINHERIT) “ 设为Wdm.lib,并不继承父级或项目默认设置 ”
11、清单文件选项卡: 生成清单: 否
12、调试选项卡: 生成调试信息: 是
13、系统选项卡: 子系统: 本机(/SUBSYSTEM:NATIVE)
随机基址: 默认值
数据执行保护DEP:默认值
驱动程序: WDM(/DRIVER:WDM)
14、命令行选项卡:附加选项:
/SECTION:INIT,D /IGNORE:4078 /safeseh:no
这可以避免以下错误提示:
LINK : warning LNK4078: 找到多个“INIT”节,它们具有不同的属性(E2000020)
LINK : error LNK2001: 无法解析的外部符号__load_config_used
==================================================================================