是否可以在我正在开发的 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() 日志消息。工作起来就像一个魅力,但每次要调试时都必须执行以下步骤:
- 在设备管理器中禁用设备
- 在设备管理器中启用设备
- 在 Visual Studio 中快速附加到进程 WDFhost.exe:调试->附加到进程。如果您按照上述方式配置了注册表,则您有 15 秒的时间来执行此操作。
注意:这样调试不需要设置“bcdedit /debug on”。这很好,因为如果启用了安全启动,您将无法设置调试模式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)