Windows10如何通过自定义inf文件安装WinUSB驱动?

How to install WinUSB driver through customized inf file on Windows 10?

我需要直接通过 USB 与简单的自定义设备通信。我有完整的通信协议规范。不幸的是,设备供应商没有为该设备提供 WinUSB 驱动程序。

根据 https://msdn.microsoft.com/en-us/library/ff540283.aspx#inf 我应该能够使用 inf 模板在 Windows 10 上自动安装 WinUSB 驱动程序。

但是安装失败:

The third-party INF does not contain digital signature information.

据我了解,它正在寻找签名的 .cat 文件。但在这种情况下,我没有任何要签名的文件,也没有 .cat 文件。我只想为设备安装 Windows 自己的 WinUSB 驱动程序,显然 Windows 驱动程序应该由 Microsoft 签名。

如何继续安装 .inf 文件?

如果您只关心支持 Windows 8.1 及更高版本,并且您有能力更改设备的固件,则可以考虑使用 Micrsoft OS 2.0 Descriptors。这将允许 Windows 计算机将该设备识别为 WinUSB 设备并自动加载 WinUSB 驱动程序。

另一种选择是使用 Zadig or the related library libwdi 为您的设备安装驱动程序。我只建议将此用于小型、临时或组织内部安装,因为它有点像 hack(它将自己的证书安装到您的受信任的根证书颁发机构列表中)。

如果您想使用未签名的 INF 文件,您还可以考虑在您的计算机上禁用驱动程序签名实施。

如果这些选项中的 none 适合您,那么您需要考虑从证书颁发机构购买代码签名证书并为您的驱动程序签名。 Windows 的代码签名是一个不断发展的领域,但我的文章 Practical Windows Code and Driver Signing 试图记录您需要了解的内容。