如何调试UMDF驱动

2025-06-23 03:31:05
推荐回答(1个)
回答1:

可通过以下步骤调试UMDF驱动:
1、编译好需要调试的驱动(包括安装用的inf等),连接硬件,把需要调试的驱动安装上。断开硬件连接(对于USB设备来说直接拔出即可);
2、启动WinDBG,设置好符号路径,特别是被调试驱动的符号,运行regedit;
3、如之前从未调试过UMDF驱动,会发现HostProcessDbgBreakOnDriverLoad键值为0,这个键值的含义是延迟多少秒加载驱动对象。可将其修改为15秒(十六进制0xF,如手慢可以改得更大)。这个键值不影响DllMain,如要调试DllMain,可修改 HostProcessDbgBreakOnStart;
4、插入硬件,在15秒内使用WinDBG的Attach to Process(快捷键是F6),找到UMDFHost.exe,attach即可;
5、如系统有多个使用UMDF驱动的硬件,就会有多个 UMDFHost.exe进程,为了不致混淆,可提前移除不用的硬件。完成调试后,需恢复注册表(将延迟修改为0),以免正常硬件的驱动加载被延迟。