【发布时间】:2013-10-09 15:04:25
【问题描述】:
在Microsoft's suggested procedures 之后,我们使用SetupCopyOEMInf 在Windows 的驱动程序商店中预安装了一些驱动程序包。这个过程多年来一直运作良好;在 XP、Vista、7 甚至 8 上都没有问题。
在评估 Windows 8.1 RTM 时,我们发现我们的驱动程序不再预安装。
查看setupapi.dev.log,发现:
!!! sto: Failed to query boot critical status of device class. Error = 0x00000002
及以后:
!!! idb: Failed to query inbox status of device class {ff646f80-8def-11d2-9449-00105a075f6b}. Error = 0x00000002
!!! idb: Failed to publish 'C:\Windows\System32\DriverStore\FileRepository\[ourinfname].inf_x86_3361fc76cd85b678\[ourinfname].inf'. Error = 0x00000002
我翻阅了文档,试图找出我们做错了什么。
使用 pnputil.exe -a 从命令行预安装或使用 InstallScript 的 DIFxDriverPackagePreinstall() 会产生相同的结果。
如果我们不尝试将驱动程序放在驱动程序存储中,驱动程序可以在 Windows 8.1 上运行。如果我们将已经安装了驱动程序的 Windows 8 机器升级到 Windows 8.1,预安装也可以工作。无论哪种情况,一旦它开始工作,它就会继续工作。
为什么在 Windows 8.1 上会失败?
【问题讨论】:
标签: guid drivers windows-8.1 wdk inf