UMDF的第一个win10驱动:驱动程序开发环境完善(二)

问题 3 InfCat,Signability test failed

有时重新“编译工程”,在【解决方案资源管理器】中,右键单击【解决方案”…”(1个项目)】,先后点击【清理解决方案©】、【重新生成解决方案®】,会出现如下的问题:
在这里插入图片描述
双击错误信息“InfCat,Signability test failed…”,获得如下的错误详细信息:
在这里插入图片描述
What? 使用了一个未来的时间?

出现这个问题后,需要在工程属性中,设置InfCat的“Use Local Time”选项值为【是】:
在这里插入图片描述
设置“Use Local Time”选项值为【是】后,重新Build工程,就OK了。

这个问题,在英文版的网页中有提示:
在这里插入图片描述
但是在中文网页教程中,没有这样的提示。
这也是建议使用因为教程网页的另一个“证据”,:)

问题 4 “Provision the target computer”失败

进行win10驱动开发时,需要两台计算机:host computer和target computer(测试计算机)。需要在host computer上对target computer进行一些设置(即Proision the target computer过程)。Proision the target computer过程操作成功后,在“部署解决方案”(也就是在target computer上部署驱动)的操作才能选择对应的target computer。
操作过程在下面的链接中:
https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/provision-a-target-computer-wdk-8-1
Provision a computer for driver deployment and testing (WDK 10)
但是Provision the target computer操作过程相当的曲折。最初的尝试过程中,即使Provision the target computer过程成功了,但是在“Deploy the driver”操作过程中又总是通不过。错误信息也是各种各样……
在多次尝试后,终于Provision the target computer成功,这里先列出笔者总结的一些需要检查的点,不一定对,遇到同样问题的可以参考:

1, 不要使用无线网卡作为调试媒质,而使用有线网卡!!
这点特别重要。反正最后我放弃使用无线网卡进行调试。
使用无线网卡,进行第一个UMDF驱动程序教程的相关操作,没有问题:
Write a Universal Windows driver (UMDF 2) based on a template
网址:
https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/writing-a-umdf-driver-based-on-a-template
但是在操作第一个KMDF驱动程序教程时:
Write a universal Hello World driver (KMDF)
https://docs.microsoft.com/en-us/windows-hardware/drivers/gettingstarted/writing-a-very-small-kmdf--driver
就会停留在最后使用windbg的一个步骤中(后面再专门说这个问题)。

2, 目标计算机和主机在同一个网段内。
3, 两台计算机的网络要在同一个“类型”下,比如都是公用网络,或者都是专用网络。
4, 关闭防火墙
5, 不仅仅关闭防火墙,而且进入防火墙高级设置中,进行如下设置(这在教程中有提示:):

On the target computer, in Control Panel, go to System and Security > Windows Firewall > Advanced settings > Inbound Rules.
In the list of inbound rules, find all Network Discovery rules for your active network. (For example, find all Network Discovery rules that have a Profile of Private.) Double click each rule and open the Scope tab. Under Remote IP address, select Any IP address.
In the list of inbound rules, locate all File and Printer Sharing rules for your active network. For each of those rules, double click the rule, and open the Scope tab. Under Remote IP address, select Any IP address.

A,在“入站规则”中,全部以“网络发现”打头的项,设置为“启动”,并且再到“作用域”中,去设置“远程IP地址”为“任何IP地址(Y)”:
在这里插入图片描述
当然,要“启动”该规则:
在这里插入图片描述

B,在“入站规则”中,全部以“文件和打印机共享”打头的项,设置为“启动”,并且再到“作用域”中,去设置“远程IP地址”为“任何IP地址(Y)”:
在这里插入图片描述
6, Provision成功后,或者deploy成功后,先不要关闭计算机。甚至不要注销计算机。
因为provision过程会在目标计算机上添加一个WDKRemoteUser的用户,该用户的密码未知(?),并且之后windows启动会自动使用这个用户登录。
所以如果注销WDKRemoteUser后,就无法再次用WDKRemoteUser用户登录了。而既然windows设置了这个功能,就最好让target computer停留在WDKRemoteUser用户登录的界面。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值