Когда я бегуpnputil.exe /add-driver драйвер.inf /установитьон предлагает мне сначала проверить издателя. Мне нужен способ пропустить этот шаг и сделать так, чтобы издатель был проверен автоматически.
решение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 сертификатом. Этот же сертификат необходимо установить в доверенном корневом хранилище перед попыткой установки фактического драйвера.
Было бы действительно очень плохо, если бы люди могли молча устанавливать ненадежные драйверы.