当前位置: 首页 > news >正文

win7驱动开发环境搭建

资源下载

微软只有最新版本的visual stutio社区版可供下载,现在(2025.12.23)是vs2026,如果下载老版本社区版,则需要找第三方资源。 我们需要的VS版本是2017,WDK 17763.1,SDK 17763.1,必须这三个配合才能编译windows 7的驱动,当然也可以有其他配合,我并没有使用。
运行VS2017安装程序后,需要“使用C++的桌面开发”选中 安装详细信息如下图所示:

image

 


SDK只能选中10.0.19041.0版本的,没有其它可选。

 image

 

记住缓存位置,以后可以直接把这个文件夹打包,后续在其他位置安装就不需要再下载了:

image

 

安装按钮边上选择“全部下载后再安装”,开始安装。

安装VS2017完毕后运行一下程序,注意社区版必须要登录才能使用,我得验证登录好几次才能最终进入,不知道是不是都这样。进入IDE起始页界面,说明安装没问题,则继续安装WDK和SDK。 最新版本的SDK是下面的网址:

 https://learn.microsoft.com/zh-cn/windows-hardware/drivers/download-the-wdk
这个不支持VS2017,从这个界面可以跳转到其它WDK下载:
https://learn.microsoft.com/zh-cn/windows-hardware/drivers/other-wdk-downloads
这个页面可以看到使用VS2019可以支持windows7驱动开发,这仍然不是我们要找的,我们得在不支持的WDK版本寻找:
https://learn.microsoft.com/zh-cn/windows-hardware/drivers/legacy-wdk-downloads
可以看到VS2017能支持的最新版本WDK是这个:

image

 SDK和WDK都要选择17763.1这一行的。其它版本虽然下载的文件也叫winsdksetup和wdksetup,但是他们都是对应不同版本的sdk和wdk,只有同一个版本的sdk和wdk才能配合工作。先安装sdk,建议选中Download后进入目录安装,这样就不需要每次下载都安装一遍。

image

 

WDK也一样建议先下载再安装。

即使安装过VS2017,安装过程中也会有这个提示,不用管,继续装。

image

 

装完后会提示:是否安装扩展,选择安装扩展,最后完成如下图所示:

image

 

无法解析外部符号

一切安装完成后,就可以打开VS2017,新建驱动工程了:

image

 


选择“Kernel Mode Driver(KMDF)”就可以生成一个有基本框架代码的工程。此时编译可能会报下面的错误:

1>BufferOverflowFastFailK.lib(loadcfg.obj) : error LNK2001: 无法解析的外部符号 ___guard_eh_cont_table
1>BufferOverflowFastFailK.lib(loadcfg.obj) : error LNK2001: 无法解析的外部符号 ___guard_eh_cont_count

这是由于SDK不匹配造成的,在项目上面右键-属性,将SDK版本改成10.0.17763.0

image

 


再编译就可以生成sys文件了。
默认情况下生成win10驱动,需要按照下面设置才能生成win7支持的:

image

 


主要是将驱动设置中的目标系统版本设置为Windows 7

编译时报告inf2cat错误

22.9.7: DriverVer set to a date in the future (postdated DriverVer not allowed) 这是由于系统时间和UTC时间不一致造成的,应该设置使用本地时间,设置方法:

打开项目属性->配置属性->InfCat->General->Use Local Time->选择【是】。

http://www.jsqmd.com/news/258088/

相关文章:

  • 面试官:什么是 Redis 的数据分片?
  • allegro点击右键没有菜单
  • 2025年导电滑环厂家:市场热销品牌大揭秘,帽式滑环/集电环/光电滑环/编码器滑环/滑环,导电滑环公司排行 - 品牌推荐师
  • 2025年深度评测:本地口碑领先的高中全览,中学/实验中学/实验学校/高中/名办高中/高中复读学校/学校高中企业推荐排行榜 - 品牌推荐师
  • 当系统出现d3dx9_37.dll丢失问题如何解决? 免费下载方法分享
  • 为什么不让程序员直接对接客户,而是通过产品经理?
  • 当系统出现找不到d3dx9_38.dll如何解决? 免费下载方法分享
  • ABC279H
  • 为什么程序员不自己开发微X小程序这类似的东西赚钱?
  • 比特币超级周期将至的原因
  • 分享一个占用单片机2K内存就能跑的AI模型
  • 氟塑料回收如何选?2026年教你几招!,国内氟塑料回收产品甄选实力品牌 - 品牌推荐师
  • 看到第5张图我哭了!那个在我手腕画手表的女孩,你现在还好吗?
  • 非标记定量(LFQ)
  • 2026 年 geo 优化服务商选型指南:精准识别专业靠谱合作伙伴 - 速递信息
  • 面试了一个45岁的程序员,他要月薪2万,我同意了;结果面试完把他送到电梯口,他说如果是14薪的话,月薪1.8万也行。
  • 裁员这事儿,还真没完了。。
  • 领导说你潜力大,却不肯提拔你,只说明一件事
  • 2026 年 1 月推进大型 GEO 营销计划:优选供应商推荐与服务测评 - 速递信息
  • 炒的这么火,到底什么是具身智能?来吧,听我扯扯淡。
  • 接受程度的七个层次及应对之道
  • 【Rust日报】《LLVM 糟糕的一面》|《cargo-semver-checks 呈现指数级增长》
  • 深耕男士护肤11年,左颜右色:科研驱动的国货功效护肤领军者 - 速递信息
  • 图灵新知2026年书讯 | 万众期待,又是新书爆发的一年!
  • 2026年1月权威榜单:GEO优化公司综合实力Top5,谁是真正的领导者? - 速递信息
  • 为什么 Go 社区强调避免不必要的抽象?—— 借用海德格尔哲学寻找“正确”的答案
  • 2026自动化展会导航:口碑好,一网打尽!智能/压力机/液压气动/环保/机床/激光技术设备/机械,自动化展览怎么选择 - 品牌推荐师
  • 2026年新加坡留学中介哪家好:五家优选全面对比 - 速递信息
  • 自动操作浏览器,又一款 Chrome 神器,开源了!
  • 2026 年前端必会的 10 个现代 CSS 布局技巧