windows-7 - dpinst/DifX 不会静默安装签名驱动程序

标签 windows-7 device-driver digital-signature setupapi driver-signing

通过 DpInst 在 Windows 7 上安装签名驱动程序(即使用正确签名的 .CAB)时,除非它是 WHQL 签名的驱动程序,否则您无法静默安装它。如果您在非静默模式下运行 DpInst,它会提示您信任“发布者”。如果您在静默模式下运行 DpInst,它将失败并显示与签名相关的错误代码(类似于 0x800b0109 - 检查您的 setupapi.app.log)。

最佳答案

虽然 ilya 的回答很好,但 Windows 7 上的解决方案更简单。下面的命令将证书部署到当前用户和系统受信任的发布者证书存储。它需要管理权限,由 Microsoft 提供。
对于 Windows 7

certutil.exe -addstore TrustedPublisher cert.cer
我验证了这适用于 Windows 7 64 位部署签名但不是 WHQL 认证的驱动程序 - 不提示用户。
视窗 XP
WHQL认证
看来在 XP 上,您仍然需要经过 WHQL 认证的驱动程序,以避免出现安装提示。
在 Windows XP 上预安装 SPC
对于 Windows XP,您需要从 Microsoft 下载 Windows Server 2003 管理工具包并解压缩 certutil.exe 和 certadm.dll。然后上面的命令也适用于 XP。
管理工具包:http://www.microsoft.com/download/en/details.aspx?DisplayLang=en&id=16770
注意解压出来的msi文件可以通过7-zip进行检查,所以不需要安装就可以得到你需要的exe和dll。

关于windows-7 - dpinst/DifX 不会静默安装签名驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4513666/

相关文章:

excel - 如何以编程方式从 Excel 中的 VBA 宏中删除数字签名?

vb6 - 在windows 7下从VB6运行activex dll

vb.net - 如何在后台线程中运行代码并仍然访问UI?

c++ - Windows 7 上的 DLL 重定向

.net - VS2008 on Win7 64-Bit : Debugging a Windows Service

c++ - 有没有办法确保连接到注册表中出现的串行端口的设备可以使用?

windows - 来自 Windows 7 应用程序的 SPTI/SCSI 操作

android - Nexus 6 和三星 Galaxy S6 的存储和网络设备驱动程序源代码

c# - 数字签名(PKCS#7 - 延迟签名)/自应用签名后文档已被更改或损坏

delphi - 在Delphi中使用OpenSSL验证SHA256签名失败