Какую запись Windows не может прочитать
Чтобы запустить устройство, Windows собирает для него цепочку драйверов. В центре стоит основной драйвер, а сверху и снизу к нему могут прикрепляться фильтры — небольшие драйверы, которые перехватывают обмен с устройством. Фильтрами пользуются антивирусы, программы записи и эмуляции дисков, утилиты для веб-камер и клавиатур. Список фильтров хранится в реестре: для конкретного устройства и для всего класса, например для всех приводов или всех клавиатур. Если какое-то звено цепочки прочитать не удаётся, система не запускает устройство и показывает код 19.
Самая частая поломка цепочки — ссылка на исчезнувший драйвер. Программа при установке дописала свой фильтр в раздел класса, а при удалении стёрла файл драйвера и его службу, но строку в списке фильтров оставила. Windows по-прежнему пытается подключить фильтр, не находит его и не запускает устройства этого класса. Отсюда характерная картина: код 19 стоит сразу у всех приводов, всех камер или всех клавиатур, а не у одного устройства.
Программный это сбой или аппаратный? Почти всегда программный. Код описывает запись в реестре, а не состояние устройства. Железо попадает под подозрение, только если код появился после сбоев питания или внезапных выключений и рядом есть другие признаки испорченных данных: ошибки файловой системы, синие экраны, пропадающие файлы. Тогда запись могла повредиться из-за накопителя, и начинать нужно с него.
