电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Windows7WDKVSVisualDDK驱动开发环境搭建

67页
  • 卖家[上传人]:大米
  • 文档编号:510529066
  • 上传时间:2022-11-28
  • 文档格式:DOC
  • 文档大小:1.83MB
  • / 67 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、置顶lWindows7+WDK+VS2010+VisualDDK驱动开发环境搭建(菜鸟的经验)分类:驱动开发2011-08-12 23:30 863人阅读评论(3)收贩举报H己在研究驱动开发,第一步就是开发环境的搭建,网上已有很多的教程一,我也是按着教程一步一步搭 建的,但在搭建过程的过程当中遇到一些问题,也花了我不少时间。第一个难题就是,我是Windows7+VS2010+WDK的开发环境。首先我参考了网上的_篇文章:http:/ 7配置驱动开发环境(wdk76o)1.安装 VS2Oio?WDK7.6o(GRMWDK_EN_76oo_i )2.新建VC控制台项目(选择为空项目)ir?w3-新建项目配置“driver,点击下拉按钮点击(配置管理器)输入名称(driver)点击确定就可以了,其他的不要 动哦!完成后的效果!点击确定按钮之后呈现岀来的画面鼠标右击新建的driver属性,会弹岀以下窗口!牛设置VC+路径我把wdk安装在E盘下a.配置可执行文件目录:E:winDDK7600.16385.1binx86;b.配置包含目录:E:WinDDK7600.16385.1incddkE:W

      2、inDDK7600.16385.1incE:WinDDK7600.16385.1incapiC.配置库目录:E:winDDK7600.16385.1libwin7i3865新建C/C+文件 不然无C/C+设置选项刚开始我们创建了一个空的项目所以项目里没有C+文件,现在要做的就是在空的项目-源文件-添加一 个新建项C+文件常规目标文件扩展名:sys 必选6.设置C/C+选项常规选项卡1调试信息格式(C7兼容(/Z7) 可选2警告等级 (2级(/W2)可选3将警告视为错误(是(/wx)可选 优化选项卡优化(禁用/Od)可选预处理器预处理器定义:WIN32=ioo;_X86_=i;WINVER=ox5O1;DBG=i必选代码生成启用最小重新生成:否/可选基本运行时检查:默认值/可选运行时库:多线程调试(/MTd)或 多线程 (/MT)建议选 本人选择的是多线程调试(/MTd)缓冲区安全检查:否/可选(可避免出现LINK : error LNK2001:无法解析外 部符号 security_cookie)高级调用约必选建议选上/可定 stdcall(/Gz) 7-链接器设置常规启用增量链接:否

      3、(/INCREMENTAL:NO) 忽略导入库:是选(设置为此值时,必须在附加库目录中加:E:WinDDK7600.16385.1libwin7i3865 这样项目就不会依赖IDE环境的设 置)如果否(设置为此值时,将依赖IDE的环境 的相关设置) 输入附加依赖项ntoskrnl.lib ;Hal.lib ;wdm.lib;wdmsec.lib;wmilib .lib;ndis.lib;MSVCRT.LIB;LIBCMT.LIB 必选/NT 式驱动 ntoskrnl.lib WDM 式驱动 wdm.lib(HalXXX 函数在 Hal.lib, WmiXXX 函数在 wmilib.lib , NdisXXX 函数在 ndis.lib)(必要时需要增加微软的标准库MSVCRT.LIBMSVCRTD.LIB(调试库)LIBCMT.LIBIBCMTD.LIB(调试库)(如果源码中有source文件,那么该文件的TARGETLIBS字段会列出该项目需要的库)忽略所有默认库:是(/NODEFAULTLIB)必选清单文件:启用用户账户控制(UAC) 否必选不然会岀现 LINK : fatal er

      4、ror LNK1295: 7MANIFESTUAC与“/DRIVER”规范不兼容;链接 时不使用 7MANIFESTUAC”调试:生成调试信息是(/DEBUG)可选生成映像文件:是(/MAP)可选映像文件名:$ (T arget Dir) $ (T argetN ame). map可选系统(System)子系统:控制台(/SUBSYSTEM:CONSOLE) 堆栈保留大小:4194304堆栈提交大小: 4096驱动程序:驱动程序(/DRIVER)高级:入口点:DriverEntiy必选可选可选必选必选随机基址:清空把框里的数据删掉。(yes也不是no也不是就是要一个干干净净的文本框)/ 必选不然会出现 e:xxx.sys : fatal error LNK1295: “/DYNAMICBASE”与“/DRIVER”规范不兼容;链接 时不使用 7DYNAMICBASE数据执行保护(DEP):清空把框里的数据删掉。 (yes也不是no也不是就是要一个干干净净的文本框)必选不然会出现 e:xxx.sys : fatal errorLNK1295-7NXC0MPAT:NCT与“/DRIVER规

      5、范不兼容;链接时不使用 7NXC0MPAT:N0”设置效应和:是(/RELEASE)可选建议选上基址:0X10000 命令行:/SECTION:INIT?D /IGNORE:4O78 (建 议不要写进去,会报错!)最后给出一个超级简单的代码来测试一下我们配置的 是否成功? ?#include ntddk.hNTSTATUSDriverEntiy(PDRIVER_OBJECTDriverObject?PUNICODE_STRING RegistiyPath)return STATUS_UNSUCCESSFUL;如果没有报错那么恭喜你配置成功了!但是结果失败了,编译的时候会出现错误。结果在网上找原因呀,发现把VC目录下的sal.h代inc/api 目录下的sal.h,但是还足编译不过,后来我想还原inc/api目录下的sal.h,所以我就按了 ctrl+z,结果不知道 为何(可能是点快了,被我删掉了,于是我就没有了 inc/api/sal.h。到止我放弃了上面那blog的方法决 定另寻方法。然后我又在网上找资料,发现了 VisualDDK是一个不错的东东,也支持vs2010.于是我下载下来

      6、安装。 然后我启动VS2010,新建了一个驱动的项目,试着编译一下(心里在祈祷,让我成功),结果大失所望。 说找不到sal.h,因为我删掉了。知道原因就好办,我就想重新安装一下WDK吧,但重新安装的时候,才发 现不能重新安装,除非你少选一项安装项,首次安装的时候我是全选所有安装项(非常郁闷)。于能我就 报着试一试态度用上面用过的方法:用vc目录下的sal.h代替inc/api目录下的sal.h,然后再编译一次, 这次是不同的错了,后来在网上找答案,发现了另一篇文章: http:/ 7 + Visual 2010 + WDK7600.16385.1.配置方法1-新建一个空DLL项目2增加一个主程序文件,如entry.c3. 找到配置管理器,添加一个新的配置叫 做Driver Debug (以后还可以再设置一个Driver Release),如图酋(B)调试(D)团队(M)站(A)工具(T)体票结构(C)测试分析(N)尙口 (W)Driver Debu Win32:全局范围)DebugDriver DebugRelease 超莒理器-#include NTSTATUSA DriverEnt

      7、 ry(PDRIVER.OBJECT DriverObject, PUNICODE.STRING RegistryPath: return STATUSJJNSUCCESSFUL:活动昇夬方冥配置(C):/c活动昇夬方冥配置(C):4. 在属性管理器上找到Driver Debug,右键菜单中找到属性,开始配置在常规选项卡中5.1目标文件扩展名:修改为-sys5.2清除时要删除的扩展名:添加一个 *.sys,其他继承原来的系统设置5. VC+目录选项卡中6.1可执行文件目录:添加一条F:Wi nDDK7600.16385. lbinx866.2包含目录:添加三条,分别 为 F:Wi nDDK7600.16385. li ncF:WinDDK7600.16385.1i n capiF:WinDDK7600.16385.1incddk6.3库目录:添加一条F:WinDDK7600.16385.1libwin7i386 I -rujir; I 个 ( HGBS7E3S可执行文件目录包含目录引用目录库目录源目录排除目录F:WinDDK7600.16385.1binx86;$(Executable

      8、Path)F:WinDDI07600.16385.1inc;F:WinDDK7600.16385$(VCInstallDir)atlmfclib;$(VCInstallDir)libF:WinDDK76OO.16385.1libwinAi386;$(LibraryPatl$(VCInstallDir)atlmfcsrcmfc;$(VCInstallDir)atlmfcsrcrr $(VCInstallDir)indude;$(VCInstallDir)atlmfcindude;$(Wii7C/C+ + 选项卡中7.1预处理器: 预处理器定义 添 加定义 WIN32=100;_X86_= 1;WINV ER=0x501;DBG = l 如果是Release,那么可想而知,不需要DBG = 17.2高级: 调用约定修改为stdcall(/Gz)7.3常规: 警告等级设置为 /W4将警告视为错误选为 是/WX其他为建议可选项目优化:优化选项可以选择为己禁用/Od代码生成:缓冲区安全检查8. 链接器选项卡中8.1输入:在附加依赖项中输入 ntoskrnl.lib;Hal.lib;wdm.lib;wd msec.lib; wmilib.lib;ndis.lib;MSVC RT.LIB;LIBCMT.LIB把忽略所有默认库 选择为是(/NODEFAULTLIB)8.2清单文件:启用用户账户控制 (UAC) 否否则会出现 /MANIFESTUAC与/DRIVER规范 不兼容8.3系统: 子系统选择为 控制台(/SUBSYSTEM :CONSOLE)驱动程序选择为驱动程

      《Windows7WDKVSVisualDDK驱动开发环境搭建》由会员大米分享,可在线阅读,更多相关《Windows7WDKVSVisualDDK驱动开发环境搭建》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.