版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://flyxxtt.blogbus.com/logs/42680411.html
VS2008又针对Windows Vista平台新添加了几项配置选项,对于想要用VS2008直接编译驱动的朋友来说又会遇到一些问题。我把编译成功的配置步骤分步写在下面,供大家参考:
1、Visual Studio 2008 可以在微软的官方网站下载,我下载的是VS2008专业版。不过下载和安装Microsoft的东东一直以来都是个体力活儿,当然是对于电脑来说,我家那老朋友为了VS2008呼啸了一个晚上。这儿下载的是90天的试用版,网上已经有很多方法了,最常用的也是我亲自验证的方法是:在“添加或删除程序”里找到VS2008,点“更改/删除”就会看到一个输入序列号的地方,把序列号输进去,点“升级”按钮即可,Team Suite和Professional通用。下面是网上找的序列号:
2、接下来是Windows Driver Kits。网上经常看到有人问怎样下载WDK,其实并不难下。我们先打开https://connect.microsoft.com/default.aspx这个网站,在主页中单击站点目录,在该页左侧的*类别*中选择开发人员工具,并在右侧找到Windows Driver Kit(WDK) and Windows Driver FrameWork(WDF),如下图。单击立即申请,在填写完注册信息后就可以下载WDK了。
3、现在要让Visual Studio 2008 能够编译驱动程序,步骤如下:
(1) 打开VS2008,单击工具——>选项;在选项的列表栏选择项目和解决方案——>C++目录;在左侧的显示以下内容的项目中先选择包含文件,并在下面新建D:\WinDDK\6001.18002\inc\api和D:\WinDDK\6001.18002\inc\ddk两个路径(注意:D:\请替换成你WDK的安装目录);然后再在显示以下内容的项目中选择库文件,在下面添加D:\WinDDK\6001.18002\lib\wxp\i386(注意:D:\请替换成你WDK的安装目录)。
(2) 接下来是每次创建项目都需要做的。先创建一个项目,在项目生成后点击项目——>(项目名)属性,点击配置管理器,并在配置管理器中新建一个名为Free的配置(新建时从Release复制配置);之后在属性页的右侧选择配置属性——>C/C++ ——>高级,调用约定改为__stdcall(/Gz);再在属性页的右侧选择配置属性——>链接器,在常规中把输出文件改为$(OutDir)\$(ProjectName).sys,在清单文件中把启用用户账户控制(UAC)改为否(这就是VS2008中新增加的特性),在优化中将链接时间代码生成改为默认值,在高级中将随机地址改为默认值(这也是VS2008中新增加的特性),最后在命令行中输入:
ntoskrnl.lib
/base:"0x10000"
/entry:"DriverEntry"
/subsystem:native
/nologo
/stack:0x400000,0x1000
/incremental:no
/nodefaultlib
经过以上配置以后就可以在Visual Studio 2008 中舒适的编译驱动程序了。如还有什么问题请给我留言,我会及时答复。