Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

Code 31 Windows Server, AD и Роли

Код 31: Windows не удается загрузить драйверы для этого устройства

Обновлено: 09.09.2026 · Официальная документация ↗

Архитектура драйверов (PnP) и ошибка Код 31

Ошибка с Кодом 31 (Текст: «Это устройство работает неправильно, поскольку Windows не удается загрузить для него нужные драйверы») в Диспетчере устройств указывает на то, что менеджер Plug and Play (PnP) не смог инициализировать файл драйвера (обычно .sys) в оперативной памяти (режиме ядра). Чаще всего это происходит из-за того, что файл драйвера поврежден, отсутствует, не имеет правильной цифровой подписи, либо существуют конфликтующие записи фильтров в реестре. Бизнес-риски: неработающие USB-токены ЭЦП, нераспознанные сетевые карты, зависания графических адаптеров.

Типичные жертвы Кода 31

Класс устройстваСимптомыПричина
CD/DVD-ROM или USB FlashУстройство с желтым треугольникомПовреждение ключей UpperFilters / LowerFilters в реестре (часто после удаления антивируса или ПО для записи дисков).
Сетевые адаптеры (WAN Miniport)VPN не подключаетсяСбой системных виртуальных драйверов (ndiswan).
Видеокарты (Display Adapters)Низкое разрешение, базовый адаптер (Microsoft Basic Display)Несовместимость версии драйвера с текущей сборкой (билдом) Windows.

Алгоритм устранения ошибки Код 31

Сценарий 1: Очистка фильтров реестра (UpperFilters / LowerFilters)

Самое эффективное решение для CD-приводов, USB и клавиатур. Программы (антивирусы, VMware) внедряют свои фильтры драйверов. Если программа удалена криво, запись в реестре остается, и ядро не может найти файл фильтра.

 1. Откройте Редактор реестра (regedit)
 2. Перейдите по пути: HKLM\SYSTEM\CurrentControlSet\Control\Class
 3. Найдите ветку класса вашего устройства (например, {4d36e965-e325-11ce-bfc1-08002be10318} для CD/DVD)
 4. В правой панели найдите параметры UpperFilters и LowerFilters.
 5. Удалите их (ПКМ -> Удалить).
 6. Перезагрузите ПК.

Сценарий 2: Принудительное обновление через .inf файл (Установка с диска)

Автоматический поиск Windows часто не находит нужный драйвер.

  1. Скачайте драйвер с сайта производителя в виде ZIP-архива (а не EXE-установщика) и распакуйте.
  2. В Диспетчере устройств нажмите ПКМ на проблемном устройстве -> Обновить драйвер.
  3. Выберите «Найти драйверы на этом компьютере» -> «Выбрать драйвер из списка доступных...».
  4. Нажмите кнопку «Установить с диска...» и укажите путь к распакованному файлу .inf.

Сценарий 3: Переустановка системных WAN Miniport (Для VPN)

Если Код 31 висит на виртуальных адаптерах (SSTP, IKEv2, PPTP).

 Используйте утилиту командной строки devcon (входит в Windows SDK) или PowerShell
 Для сброса сетевого стека выполните от имени Администратора:
netcfg -d
 Перезагрузитесь. Windows пересоздаст все виртуальные адаптеры заново.

Типовые ошибки администраторов

  • Отключение проверки цифровой подписи (Test Mode): Если драйвер не подписан (что вызывает Код 31 на 64-битных ОС), администраторы переводят ПК в тестовый режим (bcdedit /set testsigning on). Это отключает базовую защиту ядра (DSE) и делает систему уязвимой для руткитов.
Токены ЭЦП (Рутокен, JaCarta) горят Кодом 31, и бухгалтерия не может отправить налоги?
Конфликт драйверов смарт-карт (CCID) — классическая проблема при множественных установках КриптоПро CSP и VipNet. Эксперты ITSTM вычистят хранилище драйверов (DriverStore), исправят классы смарт-карт в реестре и обеспечат стабильную работу систем ДБО и отчетности.
💡 Практика специалистов: Практика ITSTM: Если вы разрабатываете собственное железо (например, Arduino/CH340), ошибка 'Код 31' часто возникает не из-за проблем с ОС, а из-за того, что в .inf файле секция [Manufacturer] написана неправильно или не совпадает с реальными Hardware ID оборудования (VID/PID). Внимательно проверяйте соответствие ИД оборудования в Диспетчере устройств и в inf-файле.

Частые вопросы (FAQ)

В чем разница между Кодом 31 и Кодом 10?

Код 31 означает, что Windows принципиально не может ЗАГРУЗИТЬ файл драйвера (его нет, он поврежден, нарушены фильтры). Код 10 означает, что драйвер загрузился, но само устройство отказалось ЗАПУСКАТЬСЯ (аппаратный конфликт, нехватка питания, баг прошивки).

Что такое UpperFilters и LowerFilters?

Это ключи реестра, которые приказывают ядру ОС загружать дополнительные 'фильтрующие' драйверы до (Lower) или после (Upper) основного драйвера устройства. Например, антивирус ставит UpperFilter на USB-порты, чтобы проверять флешки на вирусы перед тем, как ОС их откроет.

Как найти GUID (класс устройства) для удаления фильтров?

В Диспетчере устройств нажмите ПКМ на устройство с Кодом 31 -> Свойства -> вкладка 'Сведения'. В выпадающем списке выберите 'GUID класса устройства' (Class GUID). Скопируйте это значение со скобками {} и ищите его в ветке Control\Class в реестре.

Поможет ли средство устранения неполадок оборудования?

Иногда да. Запуск команды 'msdt.exe -id DeviceDiagnostic' вызывает встроенный Troubleshooter, который может автоматически сбросить состояние PnP менеджера и переустановить драйвер, если он есть в кэше.

Полезные материалы
Рекомендуем