如何使用 pnputil.exe 以靜默方式安裝驅動程式?

如何使用 pnputil.exe 以靜默方式安裝驅動程式?

當我跑步時pnputil.exe /add-driver driver.inf /install它提示我首先驗證發布者。我需要一種方法來跳過此步驟並自動驗證發布者。

答案1

如果您可以以管理員身分執行 Powershell,則可以透過預先授權驅動程式發布者的憑證來靜默安裝驅動程式。

您需要找到用於簽署驅動程式的證書,然後將其匯入LocalMachine\TrustedPublisher證書儲存空間。

Powershell 有Get-AuthenticodeSignature命令可以幫助您尋找憑證:在驅動程式中的某些檔案上執行該命令,看看是否可以找到有效的憑證。通常應該有一個.cat文件是驅動程式目錄並且將被簽署 - 檢查該.inf文件,因為它將在第一行之一中列出目錄。

然後,在運行之前,首先將憑證載入到受信任的儲存體中pnputil.exe。例如:

$signature = Get-AuthenticodeSignature driver.cat
$store = Get-Item -Path Cert:\LocalMachine\TrustedPublisher
$store.Open("ReadWrite")
$store.Add($signature.SignerCertificate)
$store.Close()
PnPutil.exe -i -a driver.inf

這應該能夠完全無人值守地運作。

答案2

實現此目的的唯一方法是首先使用憑證對驅動程式 inf 檔案進行簽署。在嘗試安裝實際驅動程式之前,需要將相同的憑證安裝在受信任的根儲存中。

如果人們可以悄悄地強制安裝不受信任的驅動程序,那確實是非常糟糕的。

相關內容