У меня есть два компьютера Dell под управлением Windows 10 с COM-портами на материнской плате (не конвертер USB в последовательный порт). COM-порты работали до тех пор, пока в отдельные дни после перезагрузки они оба не отобразились в диспетчере устройств следующим образом:

COM-порты в диспетчере устройств

Код ошибки

Если вы откроете записи в диспетчере устройств, статус устройства:

Windows cannot start this hardware device because its
configuration information (in the registry) is incomplete or damaged.
(Code 19)

Я не верю, что это аппаратный сбой, потому что эти два COM-порта используют совершенно разные аппаратные компоненты (один для Intel(R) 100 Series/C230 Series Chipset Family LPC Controller - A146 а другой - для чипа активного управления). Вероятность одновременного отказа обоих аппаратных компонентов на двух разных компьютерах очень мала.

Удалить и переустановить

Если я удаляю и переустанавливаю драйвер, Windows просто сообщает, что самый последний драйвер уже установлен. Журнал событий показывает события диспетчера устройств следующим образом:

События диспетчера устройств

Имена событий, соответствующие этим записям (сверху вниз):

Device installed (msports.inf)
Device service added (Serenum)
Device service added (Serial)
Device not migrated                   <---- Selected entry
Device install requested
Device deleted
Device installed (msports.inf)
Device service added (Serenum)
Device service added (Serial)
Device started (Serial)
Device install requested
Device configured (msports.inf)
Device migrated

Записи, датированные ноябрем, должны были быть первичной установкой (кто-то другой сделал это).

Реестр на нерабочем компьютере

В реестре Computer\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Serial содержит следующие записи:

ControlSet001 в реестре Серийный Enum в реестре

Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Serial содержит те же записи.

Реестр на рабочей машине

На другом компьютере Dell с аналогичным оборудованием, также работающем под управлением Windows 10, на котором все еще работают COM-порты, реестр регистрируется для CurrentControlSet\Services\Serial и ControlSet001\Services\Serial :Серийная запись в реестре - рабочая машина Серийный Enum в реестре - рабочая машина

Цепочка событий

  1. 17:00 вчера: я ушел с работы и оставил свой компьютер включенным
  2. 17:48:44 Вчера: моя IT-группа автоматически запустила установку обновления для 7-Zip с помощью EmpirumAgent.
  3. 17:48:44 Вчера: RestartManager сообщил, что не может перезапустить проводник Windows - Application 'C:\Windows\explorer.exe' (pid 8824) cannot be restarted - Application SID does not match Conductor SID.. . Я предполагаю, что требуется перезагрузка explorer.exe потому что 7-Zip устанавливает расширения контекстного меню для Windows Explorer.
  4. 17:49:21 Вчера: установщик 7-Zip завершает работу.
  5. 06:41:23 Сегодня: сегодня утром я пришел на работу, заметил, что у меня больше нет панели задач, и инициировал перезапуск с помощью shutdown -r в окне командной строки, которое я случайно открыл.
  6. 06:42:14 Сегодня. User Profile Service сообщает, что «Windows обнаружила, что ваш файл реестра все еще используется другими приложениями или службами. Файл будет выгружен сейчас ... »В нем перечислены несколько ключей, но все они находятся по пути REGISTRY\USER и ни один из них не имеет ничего общего с ключами ControlSet упомянутыми выше.
  7. Когда компьютер снова запустился, на COM-портах появилась ошибка, указанная выше.

1 ответ1

0

Я исправил проблему, удалив значение реестра UpperFilters для класса последовательного порта в этой статье LifeWire. Из этого списка я определил идентификатор GUID класса, 4D36E978-E325-11CE-BFC1-08002BE10318 для последовательных портов. Затем я удалил запись реестра UpperFilters и перезапустил. Теперь оба COM-порта работают правильно и не показывают ошибку Code 19.

Запись реестра для удаления

Я также посмотрел этот раздел реестра на компьютере, где всегда работали COM-порты - в нем не было записи UpperFilters .

Я хотел бы видеть другой ответ, который объясняет, почему это необходимо, цель записи UpperFilters и как она искажается.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .