Windows Minifilter驱动 - 调式 (4)

写任何程序动态调试是非常重要的。驱动开发也不例外。

通常现在写驱动的时候,都是在VM上跑的,调试手段基本也是本地windbg + 虚拟机。

虚拟机配置

我用的是win7,

第一步,看下面。成功执行后,会提示:

The entry was successfully copied to {xxxxxxxxxxxxxxxxxxx}

第二步:

继续在CMD中输入bcdedit /debug {xxxxxxxxxxxxxxxx} on

{xxxxxxxxxxxxxx}就是前面一步输出的GUID,用来唯一标识这个启动入口。

这样就行了,可以用bcdedit /dbgsettings来查看

VM配置

需要给VM配置一下,

先增加一个串口配置

选择output to namedpipe

输入一个名字

WinDbg连接

从file菜单里面点击Kernel debug

点击ok。

然后启动VM,选择刚才新加的启动入口

登录Windows后,启动驱动,就会发现Windbg里面可以看到log了。

在Windbg里面打开源文件,再设置pdb文件,就可以单步跟踪了。使用windbg可以大大提高开发效率。

时间: 2024-11-01 18:44:01

Windows Minifilter驱动 - 调式 (4)的相关文章

Windows Minifilter驱动 - 获取进程ID, 进程名字和线程ID (5)

在minifilter里面可能有好几种获取调用进程id,名字和线程的办法.我这里有一种: 使用 PsSetCreateProcessNotifyRoutine 和 PsSetLoadImageNotifyRoutine 这是两个API,我们可以借助它们获取进程信息.具体看:http://msdn.microsoft.com/en-us/library/windows/hardware/ff559951(v=vs.85).aspx PsSetLoadImageNotifyRoutine 可以使用这

windows 10驱动签名_win 10驱动数字签名_驱动签名注意事项

目前对于驱动开发者而言往往面对着一个问题--windows 10驱动数字签名问题,根据Symantec VeriSign代码签名中国区代理商深圳易维信的客服所介绍,目前颁发的Symantec CodeSign还不支持Windows 10,针对国外的数字签名证书已经有EV版CodeSign,暂时还没有支持中文版的EV CodeSign.所以对于急需解决win 10驱动签名的用户,可以选择申请 GlobalSign EV代码签名证书.不过EV代码签名证书的申请审核要求更为严格,具体可以联系一下深圳易

Windows显示驱动(WDDM)编程初步(1)

欢迎转载[作者:张佩][原文:http://www.yiiyee.cn/Blog/wddm1/] Windows显示驱动从Vista开始,使用新的WDDM编程框架,称为Windows Display Driver  Model.也有一种最初的名称是LDDM,L代表Longhorn,但后来微软在所有产品线上都不再使用Longhorn代号,故而改成现在的名称.虽然在有些地方还能看到LDDM的说法,但应理解成旧文档的遗存,不应该做概念上的区分. WDDM框架是一种典型的小端口(miniport)驱动框

win10迁移时出现“安装 windows 的驱动已被锁定。请解锁该驱动器,然后再试一次”解决方法

故障原因:因为想换一台新机器而又不愿新装系统,所以直接拿两块硬盘复制数据然后对旧PC的系统盘做了一个ghost,然后在新PC上进PE进行还原后,开机报错,提示修复计算机(因为硬件变更了),所以在插入安装盘进行修复时,提示"安装 windows 的驱动已被锁定.请解锁该驱动器,然后再试一次". 解决方法: 1.在进入安装盘的"开始安装"界面时,点击"修复计算机": 2.进入后选择"疑难解答": 3.选择"高级选项&qu

windows内核驱动中的链表结构

windows内核驱动中的链表结构与数据结构中的链表结构在构造上有很大不同,以循环双链表为例 数据结构中的链表结构: 数据就像集装箱,可以直接放置在火车上,而节点就像每节之间的挂接装置. 内核驱动中的链表结构: 数据就像车厢,自带挂接装置(节点) 1.链表结构体不同 数据结构中的链表结构,包含有节点和数据, struct DataList{ DataType data; struct DataList* next; struct DataList* prev; }; 驱动中的链表结构,仅包含有节

【转贴】Windows virtio 驱动

Windows virtio 驱动 https://blog.51cto.com/dangzhiqiang/1833615 去年去中建总部的时候用过. 发现很多搞openstack的人都不清楚这一块的驱动的处理. 党志强关注0人评论8298人阅读2016-08-02 17:06:14 Windows virtio 驱动 概述 该页面描述了如何为KVM里的windows虚机获取和安装virtio驱动,以及如何添加软件agent. Yum源 win virtio驱动提供yum源,安装rpm包后,vi

浅谈windows消息驱动的基本原理(.NET平台)

最近的课设涉及到调用系统API函数和窗体消息的发送,重载接收等.因此发表一篇浅文,希望能和大家共同探讨,学习. 首先,windows是一个基于视窗的消息驱动系统.这句话非常的有意思.重点是"视窗"和"消息驱动"这两个词,这两个词包含了windows界面的处理原理.下面解释下什么是消息驱动.所谓"消息",即"事件".接触过C#.NET的朋友都知道,你拖一个控件,双击,添加代码,这一段即可称为"事件".严肃点来

Windows 2008驱动安装失败的原因及解决方法

希望这些内容能够帮助各位朋友顺利地在Windows Server 2008系统环境下安装使用好各种设备的驱动程序! 寻找安装失败原因 一般来说,当我们将目标设备的驱动安装光盘正确放置到Windows Server 2008系统的物理光驱中后,系统能够自动弹出驱动程序安装向导窗口,开始安装目标设备的驱动程序,这是因为驱动安装光盘的根目录中常常存在一个名为 “Autorun.ini”的文件,用记事本之类的文本编辑程序打开该文件时,我们会看到其中包含“open=setup.exe”或 “open=in

Windows Storage 驱动开发 葵花宝典 - 翻译

Roadmap for Developing Windows Storage Drivers Last Updated: 4/20/2017 To create a storage driver, perform the following steps: 9个步骤 Learn about Windows architecture and drivers. 学习Windows系统架构和驱动知识 You must understand the fundamentals of how drivers