在umdf驱动程序开发中出现设备无法启动(代码10)的错误。

3

我正在尝试开发Umdf驱动程序,但我对驱动程序开发完全没有经验。我从以下网址中获取了wdk示例代码:

https://code.msdn.microsoft.com/windowshardware/Windows-Biometric-Driver-718005d7

我已经在inx文件中更改了硬件ID,并重新构建了驱动程序项目,然后将生成的驱动程序安装到另一台Windows 7 PC上。驱动程序安装成功,但出现一个错误:设备无法启动(代码10)。有人能建议我可能遗漏了什么吗?我只是想测试驱动程序是否成功加载。

我不确定这是否是问题所在,但根据你提供的链接,在操作系统要求部分显示客户端需要“Windows 8”。 - vvvv
谢谢您的建议,实际上它写在那里需要Windows 8,但我认为一定有办法让它在Windows 7上运行。因为我正在使用WDK 8.1,它适用于Windows 7。我不知道应该做什么来使它工作。 - vineet pant
这个链接http://pcsupport.about.com/od/findbyerrormessage/a/code-10-error.htm说:Code 10错误的原因当设备管理器无法启动硬件设备时,通常是由于过时或损坏的驱动程序引起的,从而生成Code 10错误。如果驱动程序生成一个设备管理器无法理解的错误,设备也可能收到Code 10错误。换句话说,Code 10错误有时可以是一条非常通用的消息,指示某种未指定的驱动程序或硬件问题。 - vvvv
您可以在这里查看我的答案,我会逐步解释 https://stackoverflow.com/a/54913695/403999 我正在使用 Windows 10 作为主机和目标机器。问候 - Juan Rojas
1个回答

2
我曾经遇到同样的问题。
在这篇文章中,我发现了一个有趣的观点:(链接)
引用如下:
“.INF文件用于安装虚拟设备与UMDFSkeleton示例几乎相同。只添加了一行:”
“UmdfKernelModeClientPolicy=AllowKernelModeClients”
“以允许内核模式驱动程序加载到用户模式驱动程序之上,并将请求从内核模式传递给用户模式驱动程序。 我不确定哪个内核模式驱动程序运行在虚拟读卡器驱动程序之上,但是如果从inf文件中删除此行,我们就不能收到任何I/O请求通知。”
在 [MyDevice_Install.NT.Wdf] 部分添加此行并重新安装驱动程序后,我的设备正常启动了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接