Windows驱动开发与调试

配置目标:
1.VS2017+windows10.0.16299+WDK驱动开发机(虚拟机)
2.虚拟机WIN7 sp1驱动测试机
3.win10实体机windbg调试WIN7sp1驱动测试机

  实际专业的驱动开发1和3是同一台实体机,也就是在实体机上编译和调试虚拟机内的驱动,如果驱动更加涉及底层,测试机也必须要用实体机,使用物理串口连接调试。
  这里选择分开的原因是驱动开发机要编译的是Rootkit驱动,可能会损害实体机。是为了更加安全的一种防护措施,第二是方便以后移植直接拷贝虚拟机镜像文件就可以开发了。

驱动开发环境搭建

  驱动开发的环境一定要注意VS、windows版本、SDK、WDK要严格对应。否则你安装到最后很有可能出现xxxxtemp.h这种东西。
  这种版本对照我们去哪儿查呢?当然是去微软官网。复制下面这个链接:
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/other-wdk-downloads
  如果官网有变动,直接搜索关键词:microsoft wdk,进入官网选择其他WDK下载页面,就是这个页面。
在这里插入图片描述
在这里插入图片描述
另外需要注意:
  一、Windows SDK 未包含在 Visual Studio 2015 中,因此必须单独安装 SDK。 更高版本的 Visual Studio 包含 Windows SDK。
  二、从 Windows 10 版本 1709 开始,安装 WDK 时会默认安装 Visual Studio 的 WDK 扩展。 这些扩展是将 WDK 与 Visual Studio 集成所必需的。
  三、从 Windows 10 版本 1709 开始,EWDK 基于 ISO。 若要开始使用,请下载并装载 ISO,然后运行 LaunchBuildEnv。

  根据官网的配置把环境搭建好的话还需要对VS配置如下:

在这里插入图片描述
  把SDK版本换成你的操作系统的版本的SDK,如果没有,说明VS没有安装正确,重新运行VS安装程序,更改下安装组件即可,不用完全卸载。
在这里插入图片描述
  把警告等级改为关闭所有警告。可以试一下编译一个demo的NT驱动程序,这个时候应该可以编译出sys驱动文件的。如果编译过后出现temp.h,那么你肯定哪个步骤漏了,回头反省下。

在这里插入图片描述
  最后如果编译通过了,就可以设置下生成的目标平台。

  如果自己实在不想搭建,可以找我要虚拟机,驱动开发调试等工具全部搞好大概60GB,可以联系我QQ私发。

驱动调试环境搭建

  首先关闭虚拟机(不要挂起),添加串口通信管道。注意有且仅有这一个串口,不然配置比较麻烦。

在这里插入图片描述
  以管理员权限打开system32目录下的cmd.exe,并做上图操作:创建新的标识符并开启调试模式。
在这里插入图片描述
  cmd命令打开msconfig界面,勾选上图标记的三个框。此时测试机的环境搭建完毕。拍个快照,方便以后调试。

实体机要注意:
  一、在windbg的快捷方式后添加

-b -k com:pipe,port=\\.\pipe\com_1,baud=115200,reconnect -y

  二、远程调试的符号路径最好新建个文件夹,不要和本机调试的符号文件夹放一块,因为虚拟机里的win7符号和实体机的win10操作系统符号肯定是不同的。
  三、连接时要先启动虚拟机,再启动windbg。

参考
驱动环境的搭建
https://blog.csdn.net/qq_33504040/article/details/78283489

驱动的调试
https://blog.csdn.net/qq_33504040/article/details/78349885

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

摔不死的笨鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值