无需两台机器即可调试 UMDF 驱动程序

2023-12-10

是否可以在我正在开发的 Windows 计算机上调试 UMDF 驱动程序?


对于 UMDF 2 驱动程序:

安装或启用设备后,您可以将 Visual Studio 附加到进程 WUDFhost.exe。但这样你就会遇到问题,你无法调试 DriverEntry。为了能够调试 DriverEntry,您可以设置此注册表值:

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WUDF\Services\

设置值

HostProcessDbgBreakOnDriverLoad

配置 WDFhost.exe 在调用 DriverEntry 之前应等待的秒数。我将此值设置为 0xf,因此在启用驱动程序后我有 15 秒的时间将 Visual Studio 附加到 WUDFhost.exe 进程。然后您可以单步执行驱动程序代码,还可以查看所有 DbgPrintEx() 日志消息。工作起来就像一个魅力,但每次要调试时都必须执行以下步骤:

  1. 在设备管理器中禁用设备
  2. 在设备管理器中启用设备
  3. 在 Visual Studio 中快速附加到进程 WDFhost.exe:调试->附加到进程。如果您按照上述方式配置了注册表,则您有 15 秒的时间来执行此操作。

注意:这样调试不需要设置“bcdedit /debug on”。这很好,因为如果启用了安全启动,您将无法设置调试模式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无需两台机器即可调试 UMDF 驱动程序 的相关文章

  • msvcrt.getch() 每次都会检测到空格

    我正在编写一个简单的Python代码 它应该检测我的击键 但由于某种原因 在每次击键后检测空格 代码 import msvcrt print press escape to quit text while 1 char msvcrt get
  • 为进程设置环境变量

    环境变量的概念是什么 在 C 程序中 我需要调用可执行文件 该可执行文件将调用驻留在同一文件夹中的一些其他可执行文件 可执行文件依赖于两个环境变量 PATH 和 RAYPATH 的正确设置 我尝试了以下两件事 我创建了一个进程并在 Star
  • forrt1:严重(170):程序异常 - 堆栈溢出

    并提前感谢您的帮助 我已经编译了一个程序 不是我编写的 它在 Mac 上运行得很好 但是当我尝试在 Windows 上执行该程序时 在程序开始执行后不久 我收到以下错误消息 forrt1 严重 170 程序异常 堆栈溢出 我不是 ifort
  • 如何在 Windows 上为 GeoDjango 安装 GEOS

    我正在使用 Python 2 5 Django 1 2 MySQL 和 Apache 启动一个 GeoDjango 项目 该项目将上传到 Linux 服务器 但开发将在 Windows 上进行 问题是我无法通过安装 GEOS 这是怎么完成的
  • 当我的进程被终止时到底会发生什么?

    我有一个包含本机代码和托管代码的混合进程 在 Windows Server 2003 上运行 当我从进程资源管理器中终止进程时 它会进入 100 cpu 的状态 并在消失之前保持这种状态一段时间 有时甚至 10 分钟 在此期间我无法 杀死
  • 谷歌基准迭代的意义是什么?

    我正在使用 Google Benchmark 来测量某些代码的执行时间 例如 我编写了以下代码来测量其执行时间性能 include
  • Linux“屏幕”的 Windows 等效项还是其他替代方案?

    我正在寻找一种在 Windows 环境中控制程序的方法 我希望它与 Linux 软件有点相似 screen 我搜索的原因是我需要使用标识符启动一个程序 在 Windows 上 这样我以后就能够关闭该特定程序 而无需关闭其他任何程序 即使实际
  • Node.js - 将数据缓冲到 Ffmpeg

    我使用 Node js 和 Ffmpeg 来创建动画 因为我试图避免第三方 avi mp4 解析器 所以我决定将动画输出为原始 rgb24 数据文件 然后使用一些程序将其转换为 mp4 文件 我发现 Ffmpeg 是免费且开源的 它完全可以
  • 使用 Windows 锁定屏幕后删除 Kerberos 缓存票证

    无论如何 有没有办法阻止 Kerberos 缓存的票证在 Windows 进入锁定屏幕后被删除 首次登录 Windows 时 klist exe 显示 2 个缓存票证 但是 发生 Windows 锁屏事件后 klist exe 显示 0 个
  • 如何从图像生成 tiff/box 文件以在 Windows 中训练 Tesseract

    我正在尝试在 Windows 中训练 Tesseract 为此我需要一对 tiff box 文件 并且我正在尝试使用 jTessBoxEditor 创建它 但它不接受图像作为输入 我也尝试过 boxFactory 但它无法正常运行 有谁知道
  • 如何从系统属性获取Windows操作系统环境变量

    我遇到一个关于系统属性环境变量的奇怪问题 如你所知 我们可以打开Computer gt Property gt Advanced System Settings gt Advanced gt System Environment Varia
  • “composer”在 Windows 服务器中未被识别为内部或外部命令

    我使用的是Windows Server 2008操作系统 我下载作曲家安装程序 exe https getcomposer org download 并安装到我的电脑上 当我尝试时composer install 我收到错误 compose
  • Nodejs 在 Windows 上找不到已安装的模块

    我现在正在Windows上学习nodejs 使用npm cmd全局安装了几个模块 nodejs找不到已安装的模块 以玉石为例 npm install jade g Jade安装在目录中 C Program Files x86 nodejs
  • 如何编写 .bat 或 .cmd 文件来从 PATH 中删除元素?

    Related 如何列出批处理文件中路径的元素 https stackoverflow com questions 1424558 FOR 是如何运作的 https stackoverflow com questions 817280 ho
  • 如何在 Windows 上检查子进程是否被信号杀死

    问题 给定一个在 python 中启动的子进程 其代码类似于 import subprocess p subprocess Popen command stdout subprocess PIPE stderr subprocess PIP
  • 无法在 Windows 7 上安装 Android USB 驱动程序

    所以我想使用我的新 Nexus 5 来调试我的应用程序 我尝试通过以下方式安装 Android USB 驱动程序装置经理 http developer android com tools extras oem usb html Win7但我
  • 消失的系统托盘图标

    我正在使用 C 在 Visual Studio 2010 中创建系统托盘应用程序 当应用程序启动时 我创建线程和系统托盘图标 该图标显示 但是每当我将鼠标悬停在该图标上时 它就会消失 应用程序仍在运行 即使我单击按钮显示所有隐藏的图标 它也
  • LNK2019:函数 ___tmainCRTStartup 中引用了无法解析的外部符号 _main

    我有以下错误 LNK2019 函数 tmainCRTStartup 中引用了无法解析的外部符号 main 有很多与此错误相关的线程 但这些解决方案都不适合我 而且 没有人解释为什么会出现这个错误 I tried wWinMainCRTSta
  • 如何在 RTMP 流中嵌入 pic_timing SEI 挂钟时间码?

    我需要将我的桌面流式传输到 AWS MediaLive 服务 并且根据要求 我必须在流中包含挂钟时间码 AWS 支持人员善意地通知我 对于 h 264 编码流 我需要提供时间码作为 pic timing SEI 消息 我在 Windows
  • 在 Windows 上使用“perl6”命令和 Git Bash

    使用 Windows 我安装了乐道之星 https rakudo org files和 Git 并确保C rakudo bin and C rakudo share perl6 site bin位于我的 Path 环境变量中 现在 输入pe

随机推荐

  • 通过忽略某些字符来比较两个字符串

    我想知道是否有一种简单的方法可以通过排除字符串中的某些字符来检查两个字符串是否匹配 请参见下面的示例 我可以轻松地编写这样的方法 通过编写正则表达式来查找 通配符 字符 并用常见字符替换它们 然后比较两个字符串str1和str2 我并不是在
  • Parrot VM 对最终用户有什么好处?

    这样做有什么好处鹦鹉虚拟机对于最终用户 软件开发人员 例如 如果我可以直接针对 Perl 或 Python 进行编程 为什么我还要在 Parrot 下为它们进行编程呢 基本上 VM 的典型优点 可移植性 运行时优化等 从主页 一旦程序被编译
  • 创建后台线程用于核心数据写入

    我正在尝试重新创建这篇 cocoanetics 文章中描述的三层核心数据系统 http www cocoanetics com 2012 07 multi context coredata 我遇到的问题是在其自己的后台线程上创建私有 MOC
  • php 无法解析符号链接

    php 似乎没有解析符号链接 我试图将符号链接的目标添加到 php 文件中的包含路径 但 php 似乎无法识别符号链接指向目录 因此无法找到我想要包含的文件 对于上下文 这里是相关目录详细信息 gt pwd var www siteroot
  • 如何在 Scala 中使用 Java 包 com.example...object

    如何引用名称中包含对象 例如 Scala 中的 com example object 的 Java 包 Scala 将对象视为保留字并抱怨 将保留字放在反引号内 如下所示 com example object
  • 、 的香草自定义元素中继器
  • 我目前正在尝试实现一个中继器WebComponent让公司可以轻松创建前端而不依赖于任何framework 由架构决定 这是我当前的代码 ul ul
  • Paging .net MVC - 无需从WebService下载所有记录

    我有以下问题 我想要进行良好的分页 但我不想将所有记录从 WebService 下载到我的应用程序 控制器代码 public ActionResult Vacations int page int pageNumber page 1 int
  • 如何取消隐藏被覆盖的函数?

    假设我有自己的函数 名为zeros在Matlab路径上 现在我想调用内置的zeros 我怎样才能做到这一点 Use the builtin功能 builtin function arg1 argN 在你的情况下 例如 builtin zer
  • 传单在地图上固定大小的圆圈

    我正在使用 leaflet js 创建一些标记和圆圈 我正在使用下面给出的代码来绘制圆圈 L circle lat lng 1000 color colorCode stroke false fillColor colorCode fill
  • 无法解析 Firebase 库 android

    我正在开发适用于 Android 的 firebase 同步项目时出现错误 错误 27 13 无法解析 com google firebase firebase auth 10 2 0错误 无法解析 com google firebase
  • SQLiteOpenHelper.getWritableDatabase() 的 nullPointerException,Android

    我正在尝试让 SQLite 数据库在 Android 上工作 在 MainActivity 中编写了一个小测试 其中包括在数据库一行的 3 列中输入值 之后 数据被读回并显示到屏幕上以验证其是否有效 但是我在 SQLiteOpenHelpe
  • 如何在名为 key for hibernate 的列名称中添加反引号

    我有一个 MySQL DB 表 我无法修改该表 但必须向其中插入值 它有一个名为key我需要插入其中 现在 我的 hbm xml 文件有
  • 在Android Studio中添加JsonPath导致非零退出值2错误

    当我添加JsonPath库到我的 Android Studio 1 4 项目时出现以下错误 Error Execution failed for task app dexDebug gt com android ide common pro
  • 垃圾邮件中的 JavaScript;它想做什么?

    我收到一封带有 htm 附件的垃圾邮件 我在 Linux 机器上的 gedit 中打开该文件并看到以下内容 它尝试运行的脚本会执行任何操作吗 它看起来无害 但却令人困惑 h1 Loadin h1
  • 如何将幻灯片从一个演示文稿复制到另一个演示文稿?

    我正在尝试从源演示文稿复制幻灯片并将其附加到目标演示文稿的末尾 我已经搜索过解决方案 但他们使用谷歌应用程序脚本 我正在寻找一个可以使用谷歌幻灯片或谷歌驱动器 REST API 的解决方案 到目前为止 我尝试的是获取源演示文稿幻灯片的每个元
  • Spotify 的重定向 URI 无效

    我正在尝试让 Spotify API 与 AngularJS 一起使用 我在授权阶段收到无效的重定向 URI 错误 https developer spotify com web api authorization guide 我已将red
  • 使用 JAVA 中的 Date 类处理时区更改

    我正在尝试打印当前系统日期和时间 如下所示 public class PrintDate public void getDate while true System out println new Date public static vo
  • Azure 逻辑应用程序 http post multipart/form-data 文件上传

    我正在尝试使用 Azure 中的 HTTP 逻辑应用程序调用 api 我可以通过邮递员使通话成功 查看我的邮递员配置 我可以看到来自邮递员的 http 代码 如下所示 我使用它来使逻辑应用程序的格式类似于邮递员的格式 POST dcma r
  • 向 SQL SERVER 2005 中的现有表添加自动递增主键

    我有一个包含 8 000 行数据的表 并且将添加更多数据 但我忘了在开始时设置主键 这样每一行都有一个唯一的键 后来我添加了一个主键列 但该列现在为 NULL 我希望第一行从 ID 1 开始 一直递增到 ID 8000 的最后一行 如何使用
  • 无需两台机器即可调试 UMDF 驱动程序

    是否可以在我正在开发的 Windows 计算机上调试 UMDF 驱动程序 对于 UMDF 2 驱动程序 安装或启用设备后 您可以将 Visual Studio 附加到进程 WUDFhost exe 但这样你就会遇到问题 你无法调试 Driv