2017-03-16 175 views
0

我需要通過USB直接與簡單的自定義設備進行通信。我有完整的通信協議規範。不幸的是,該設備供應商沒有爲該設備提供WinUSB驅動程序。如何在Windows 10上通過自定義的inf文件安裝WinUSB驅動程序?

根據 https://msdn.microsoft.com/en-us/library/ff540283.aspx#inf 我應該能夠使用INF模板在Windows 10自動安裝了WinUSB驅動程序。

但安裝失敗:

第三方INF不包含數字簽名信息。

據我所知,它正在尋找一個簽名.cat文件。但在這種情況下,我沒有任何文件簽署和.cat文件。我只想爲設備安裝Windows自己的WinUSB驅動程序,顯然Windows驅動程序應該由Microsoft簽署。

如何繼續安裝.inf文件?

回答

1

如果您只關心支持Windows 8.1及更高版本,並且您有能力更改設備的固件,則可以考慮使用Micrsoft OS 2.0 Descriptors。這將允許Windows計算機將設備識別爲WinUSB設備並自動加載WinUSB驅動程序。

另一種選擇是使用Zadig或相關庫libwdi爲您的設備安裝驅動程序。我只會建議將它用於小型,臨時或組織內部的安裝,因爲它是一種破解(它將自己的證書安裝到「受信任的根證書頒發機構」列表中)。

如果要使用未簽名的INF文件,還可以查看計算機上的禁用驅動程序簽名實施。

如果這些選項都不適合您,那麼您需要考慮從證書頒發機構購買代碼簽名證書並簽名您的驅動程序。 Windows的代碼簽名是一個不斷髮展的領域,但我的文章Practical Windows Code and Driver Signing試圖記錄你需要知道的內容。

+0

不幸的是,改變固件在我的情況下是不可能的。我將研究libwdi解決方案。你的文章是真正有用的簽名「技術訣竅」的集合。從它我知道簽名是必需的,即使我實際上不添加自己的驅動程序實現,但只是從我的inf文件引用Microsoft的WinUSB驅動程序,因爲Windows將每個.inf文件視爲驅動程序包。 – JustAMartin

相關問題