1

尝试使用Microsoft Driver Package Installer DPInst安装驱动程序时出现错误0xE0000247。我尝试使用Visual Studio 查找工具检查错误代码,但该工具不知道此错误代码。MSDN 在这里也无济于事。

如何查找此错误的含义?

下面是我的DPINST.LOG文件的片段:

INFO:   Install option set: Running in quiet mode. Suppressing Wizard and OS popups.
INFO:   Install option set: legacy mode on.
INFO:   Install option set: Suppressing EULA.
INFO:   Install option set: Force install if driver is not better.
INFO:   Install option set: Suppress Add or Remove Programs entries.
INFO:   Found driver package: 'C:\Program Files (x86)\MyApp\my_driver.inf'.
INFO:   Preinstalling 'C:\Program Files (x86)\MyApp\my_driver.inf' ...
INFO:   ENTER:  DriverPackagePreinstallW
INFO:   RETURN: DriverPackagePreinstallW  (0xE0000247)
INFO:   Returning with code 0x80010000
4

1 回答 1

4

直接来自SetupAPI.h(省略不相关的行):

#define APPLICATION_ERROR_MASK       0x20000000
#define ERROR_SEVERITY_ERROR         0xC0000000
#define ERROR_DRIVER_STORE_ADD_FAILED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x247)

因此,您的错误是ERROR_DRIVER_STORE_ADD_FAILED返回的通用错误代码,SetupCopyOEMInf而该错​​误代码又由内部调用DriverPackagePreinstall

此错误的原因没有得到很好的记录,但似乎与任何特定类型的错误无关(因此我将其称为“通用”)。该名称本身表明驱动程序无法添加到驱动程序存储区(或 Windows Vista 之前的操作系统版本的DIFx 驱动程序存储区),这可能有多种原因(访问权限不足、驱动程序包验证失败……) .

根据个人经验,我可以告诉您,在发生此错误的大多数情况下,用于在 64 位 Windows 上签署驱动程序包的证书存在问题。(这确实应该是CERT_E_*错误代码之一,但是...)

于 2015-03-04T19:13:01.677 回答