[用户投稿] Win 64 驱动编程 第一课 环境搭建(VS2015 + SDK +WDK +VM12)

  2018年04月20日    24983 阅读 Tag:

感谢本站用户:shenyizhe 投稿为大家分享。


驱动开发环境及其双机调试环境搭建

本文参照互联网上教材根据实际情况贴图

操作系统Win10 x64  

 

win10.png

 

开发环境搭建

 

使用工具:vs2015,Windows 10 SDK_10.0.14393,WDK10.0.14393.0

(1)安装VS2015  随便一个版本吧,我安装的企业版

百度网盘链接:https://pan.baidu.com/s/1WNYB2E2pg9h1q1sp5QNF0A 密码:6251

(2)安装Windows 10 SDK_10.0.14393.安装SDK,这个首先可以尝试从VS配置更新里安装。

百度网盘链接:https://pan.baidu.com/s/1L4qlnP0ZxCtrEJ4CNv7F-A 密码:xppk

(3)安装WDK10.0.14393 安装WDK

百度网盘链接:https://pan.baidu.com/s/1kp4MlEPN99wUO1Sn6M8u6A 密码:iwsb

 

一定要注意,SDK和WDK的第三位版本号一定要对上。我的是14393

也可以从微软官方直接下载

 

安装vs2015.png

 

 

 

 

SDK+WDK.png

 

 

双机调试环境搭建

 

搭建调试环境,驱动通常是搭建双击调试环境。虽然不是要逆向调试啥的。但是本机调试的话很容易丢失一些信息。毕竟蓝屏后我们能得到的只有一个dump。

双击调试环境搭建很简单。下面说下步骤:

1.安装VMWARE,虚拟机。我用的是vm12

2.安装Win 64系统。(我是安装的win7)

3.把第二部安装的系统UAC关掉。

4.在虚拟机里安装WMware Tools。这个在虚拟机设置里可以直接更新,安装后可以支持主机跟虚拟机文件拷贝等。

5.在虚拟机里直接安装.net framework4(如果安装的系统高于win7就不用了,win7,貌似是3.5的,之后都是大于等于4.0的)。

虚拟机设置.png

串口设置
\\.\pipe\<name>
 
bcdedit /debug on
bcdedit /dbgsettings serial debugport:2 baudrate:115200
其中debugport:1,表示选择串口com1

 

添加串行端口用于与WinDbg通讯,有其他的方式,例如VisaulDDK,这里我就不做介绍

添加成功后,在“设备管理器”可以看到COM1、COM2

 

启动虚拟机

cmd命令行下虚拟机设置

 

bcdedit /debug on
bcdedit /dbgsettings serial debugport:2 baudrate:115200
 
其中debugport:2,表示选择串口com2
 
查看设置状态
bcdedit /dbgsettings

 

 

串口设置.png

 

 

主机设置对应的通讯端口

 

主机设置.png

 

 

然后设置WinDbg启动参数

 

启动参数

-b -k com:pipe,port=\\.\pipe\win7,resets=0

 

这个“win7”就是添加命名管道时对应的名字

 

Dbg.png

 

OK,设置全部完成,打开WinDbg(x64),然后启动虚拟机

 

启动虚拟机在进入WINDOWS桌面前会断下

 

虚拟机中断.png

 

可以理解为现在是卡到了调试断点,在windebug里面直接按F5让虚拟机里的系统跑起来

 

或者输入命令“g”继续让虚拟机启动

 

g.png

 

 

OK.虚拟机正常启动

 

然后先别调试,先去下载windows符号表:

或者设置自动搜索符号表的地址

 

windbg  

File->Symbol File Path

符号表
srv*C:\Windows\Symbols*http://msdl.microsoft.com/download/symbols
 
选中reload
 
查看符号表是否导入成功
此时先重启刚刚的虚拟机,进入到那个按f5之前的那一步。

输入u KiInsertQueueApc看到下面这样(u xxx是内存代码反汇编):

 

查看符号表.png

 

OK,这样开发环境跟调试环境就OK了


      我的工单留言列表与站长回复 . 共有留言: 83 条