Помимо обновлений безопасности и патчей для операционной системы, на серверах обновлений Windows Update доступны обновления драйверов для большинства сертифицированных устройств. Если служба Windows Update при сканировании компьютера обнаружит, что для какого-то устройства в каталоге Microsoft Update доступна более новая версия драйвера, она автоматически скачает и установит обновленный драйвер. В этой статье мы рассмотрим, как отключить автоматическое обновлений драйверов устройств в Windows 10 и 11.
Отключить установку обновления драйвера для конкретного устройства
Например, вы используете какой-то старый (но стабильный) драйвер видеокарты, который перестает корректно работать после каждого автоматического обновления драйвера. После каждого обновления вам приходится вручную откатываться на предыдущую стабильную версию драйвера. Вы хотите, чтобы все драйвера компьютера обновлялись автоматически, кроме этого драйвера видеоадаптера.
Если пакет обновления драйвера доступен к установке через Windows Update, вы можете скрыть это обновление с помощью официальной Microsoft утилиты Show or hide updates.
- Скачайте wushowhide.diagcab из центра загрузок Microsoft
- Запустите утилиту и выберите опцию Hide Updates;
- В списке доступных обновлений отметьте драйвера, которые нужно игнорировать при установке и нажмите Next;
- Теперь указанные драйвера не будут обновляться автоматически.
Также можно скрыть обновления драйвера с помощью PowerShell модуля PSWindowsUpdate. Выведите список доступных обновлений драйверов, и скопируйте ID драйвера:
$Updates = Get-WindowsUpdate -WindowsUpdate -UpdateType Driver
$Updates | Select Title,Description -Expand Identity |fl
Скройте обновления для драйвера по его ID:
Hide-WindowsUpdate -UpdateID "0be073ee-34ba-432c-91c8-957a608d0e2f"
Также можно заблокировать обновление конкретного драйвера через локальную политику безопасности. Для этого нужно получить идентификатор этого устройства
- Запустите консоль диспетчера устройств (
devmgmt.msc
) и откройте свойства необходимого устройства; - Перейдите на вкладку «Сведения» и в выпадающем списке выберите пункт ИД оборудования;
- Скопируйте значения идентификаторов оборудования, связанных с устройством (в формате
PCI\VEN_8086&DEV_ ….
) в блокнот (notepad.exe
);
Также можно получить Harware ID устройства с помощью PowerShell:
Get-PnpDevice|where FriendlyName -like "*HD Graphics*"|select class, FriendlyName, HardwareID|fl
Затем откройте редактор локальной групповой политики (
gpedit.msc
) и перейдите в раздел Конфигурация компьютера -> Административные шаблоны -> Система -> Установка устройства -> Ограничения на установку устройств. Включите политику Запретить установку устройств с указанными кодами устройств (Prevent installation of devices that match any of these device IDs). Включите опцию Also apply to matching devices that are already installed.
В политике нажмите кнопку “Показать” и скопируйте в таблицу значений ID вашей видеокарты, полученные ранее;
4d36e972-e325-11ce-bfc1-08002be10318}
– класс сетевых адаптеров,
{4d36e979-e325-11ce-bfc1-08002be10318}
и
{4658ee7e-f050-11d1-b6bd-00c04fa372a7}
– принтеры и т.д. Полный список GUID классов оборудования перечислен здесь: https://docs.microsoft.com/en-us/windows-hardware/drivers/install/system-defined-device-setup-classes-available-to-vendorsСохраните изменения и обновите настройки групповых политик на клиенте командой:
gpupdate /force
Теперь, если компьютер получит и загрузит обновления драйверов для этих устройств через Windows Update, при их автоматической установке появится сообщение об ошибке:
Установка этого устройства запрещена на основании системной политики. Обратитесь к системному администратору
Также можно включить эту настройку напрямую через реестр. Для этого запустите редактор
regedit.exe
, перейдите в ветку
HKLM\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions\DenyDeviceIDs
. Создайте в REG_SZ значения с именами по порядку, начиная с 1 и значением ИД оборудования в каждом параметре.
Также создайте параметр DenyDeviceIDsRetroactive со значением 1:
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions" /v "DenyDeviceIDsRetroactive" /t "REG_DWORD" /d "1" /f
Отключить обновление драйверов через GPO
Выше мы показали, как с помощью групповых политик запретить автоматическое обновление драйвера для определенного устройства. Через GPO можно полностью отключить обновление любых драйверов.
- Нажмите сочетание клавиш
Win + R
и наберите в появившемся окнеgpedit.msc
(в домашних редакциях Windows можно запустить редактор локальных групповых политик так); - Включите параметр Do not include drivers with Windows Update (Не включать драйверы в обновления Windows) в разделе Computer Configuration -> Administrative Templates -> Windows Components -> Manage Updates offered from Windows Update.
- Затем перейдите в раздел Computer Configuration -> Administrative Templates -> System -> Device Installation
- Настройте следующие политики
- Prevent device metadata retrieval from the Internet (Отключить запрос на использование Центра обновления Windows при поиске драйверов)=
Enabled
- Specify search order for device driver source locations (Задать порядок поиска в исходных расположениях драйверов устройств) =
Do not search Windows Update
(Не искать на веб сайте центра обновления Windows)
С помощью доменных GPO (настраиваются с помощью консоли Group Policy Management Console
gpmc.msc
) вы можете применить эти настройки на нескольких компьютерах в домене AD. В рабочей группе можно скопировать настройки локальной GPO на другие компьютеры с помощью LGPO.exe. После применения этих политик к компьютерам, они перестанут пытаться обновлять драйвера через Windows Update.
Отключаем автоматическое обновление драйверов с помощью PowerShell
Для отключения автоматического обновления драйверов в Windows можно воспользоваться командами PowerShell, которые изменят настройки в реестре (аналогичные изменениям, вносимым описанным выше политикам).
Нужно изменить значения следующих параметров реестра:
-
SearchOrderConfig
=3 (не устанавливать драйвера через Windows Update -
PreventDeviceMetadataFromNetwork
= 1 - Параметр
ExcludeWUDriversInQualityUpdate
= 1 (находится в нескольких ветках) -
ExcludeWUDrivers
= 1
PowerShell скрипт для изменения этих параметров реестра:
Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching\ -Name SearchOrderConfig -Value 3
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Device Metadata\' -Name PreventDeviceMetadataFromNetwork -Value 1
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UpdatePolicy\PolicyState\" -Name ExcludeWUDrivers -PropertyType DWord -Value 1
$regkeys =
'HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate',
'HKLM:\SOFTWARE\Microsoft\PolicyManager\default\Update',
'HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings',
'HKLM:\SOFTWARE\Microsoft\PolicyManager\current\device\Update'
foreach ($regkey in $regkeys){
# Проверить что ветка реестра существует и создать ее, если нужно
$test = test-path -path $regkey
if(-not($test)){
New-Item -Path $regKey
}
Set-ItemProperty -Path $regkey -Name ExcludeWUDriversInQualityUpdate -Value 1
}
foreach ($regkey in $regkeys){write-host $regkey}
После перезагрузки автоматическое обновление драйверов в Windows будет заблокировано.
Запретить обновление драйверов в настройках оборудования Windows
В версиях ОС до Windows 10 и 11 можно было запретить обновление драйвера в настройках системы на вкладке Оборудование. Для этого:
- Нажмите сочетание клавиш Win+R и выполните команду
sysdm.cpl
; - Откроется вкладка Оборудование (Hardware) в окне Дополнительных параметров системы (Advanced System Settings);
- Нажмите на кнопку Параметры установки устройств (Device Installation Settings);
- В окне «Скачивать автоматически приложения производителя и настраиваемые значки, доступные для ваших устройства» измените значение на Нет (устройство может работать неправильно);
- Сохраните изменения и перезагрузите компьютер.
Перепробовал всё что можно. Результата никакого.как они качались так и качаются.
Делаем так, идем в групповые политики (Win + R и gpedit.msc):
«Конфигурация компьютера» — «административные шаблоны» — «система» — «установка устройств» — «Задать порядок поиска в исходных расположениях драйверов устройств», включаем ее и выбираем пункт «Не искать на веб сайте центра обновления Windows»
Так же надо отключить обновление windows:
«Конфигурация компьютера» — «административные шаблоны» — «Компоненты Windows» — «Центр обновления Windows» — «Настройка автоматического обновления», включаем и выбираем пункт 2 (уведомление о загрузке и установке)
>«Конфигурация компьютера» — «административные шаблоны» — «система» — «установка устройств» — «Задать порядок поиска в исходных расположениях драйверов устройств», включаем ее и выбираем пункт «Не искать на веб сайте центра обновления Windows»
Так же надо отключить обновление windows:
«Конфигурация компьютера» — «административные шаблоны» — «Компоненты Windows» — «Центр обновления Windows» — «Настройка автоматического обновления», включаем и выбираем пункт 2 (уведомление о загрузке и установке)
То же не рабочий способ.
Похоже, придется ставить win81. win10 — это просто стена в решении этого вопроса. глухая на 100%. Либо черный экран после обновления дров видеокарты, либо ловлю проблему с wi-fi. windows обновляет дрова для wi-fi и часть сетей становится не видна. Реально полный треш, а не система, хотя столько лет прошло с момента ее выпуска.
Все эти способы несовершенны. Половина не работает, остальные приносят как пользу так и вред. По-моему лучше всего пользоваться утилитой Микрософта wushowhide.diagcab. С ее помощью можно отключить обновление какого-то одного драйвера а не всех сразу. В моем случае это был драйвер видео на планшете. Нужно чтоб был подключен интернет.
Спасибо за информацию. Ничего не помогло, пока не отключил обновление windows10.
Может для 64 битных версий ветка?
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Policies\Microsoft\Windows\WindowsUpdate
Да и в целом перезапуск службы удаляет все записи в рестре, или это из за того что у меня север обновлений прописан как «http://srv-wsus.winitpro.ru:8530»?
Заметил ещё в
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings
также присутствует ключ ExcludeWUDriversInQualityUpdate
у меня благодаря ему обновились драйвера в обход WSUS.
+ в этом разделе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings хранятся параметры отложить обновления на 365 дней и на 30 важные. Как применимы они к WSUS если параметр ExcludeWUDriversInQualityUpdate с Dword 0 сработал?
1. Если често, это жесть какая-то. Действительно еще и ключ ExcludeWUDriversInQualityUpdate в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings нужно ставить на 1.
2. Возможно эти настройки только для апгрейда билда…
10 вся жесть какая-то лучше уж 7 или 8.1
Блин, читал как бальзам на мою, израненную дисплей микродевайс амд драйвером , душу.
Но, увы не помогло. У меня леново йога, всё в нем меня устраивает , кроме встроенного драйвера амд.
Способ не работает. От слова совсем.
Раньше да — этот вариант помогал.
Перепробовал наверное все способы. Сейчас опять драйвер для дисплея «ожидает установки». Достало уже пару раз в месяц дрова переустанавливать.
Способ с групповыми политиками — это ловля события 10016, априори. Даже, если винда не сможет обновить драйвер, она убьет часть файлов существующего драйвера. opencl библиотеки итц, ибо костыль и не системный подход.
добрый день. возможно не совсем связано обновлением драйверов… windows 10 иногда по непонятной причине переключает драйвера в принтере, неважно и на usb и на сетевых. например, был на canon UFRII LT, работае-работает через какое-то время переключается на Canon B/W ** драйвер, окно настроек другое, другой набор функций. Иногда вообще на Microsoft IPP Class Driver. При том в списке «Дополнительно» — «драйверы» он остался, достаточно выбрать и всё работает. Почему это может происходить и как с этим бороться? и HP и Canon
Отключил обновление драйверов устройств через групповые политики, как описано в статье. Теперь мне понадобилось их назад включить, а по той же схеме, только наоборот и не получается. Как вернуть назад скачивание драйверов?
Если включали через GPO, то отключение политик + перезагрузка вернет все на исходное.
Если что-то делали командами или через реестр, нужно вспоминать что делали. Для начала я бы проверил, что все описанные в статье параметры реестра сброшены.
Как минимум:
SearchOrderConfig = 1
PreventDeviceMetadataFromNetwork = 0
ExcludeWUDriversInQualityUpdate отсуствует или равен 0