Як виправити стан пристрою коду 19 для COM-портів під Windows 10 (окрім відновлення системи)


0

У мене є два комп’ютери 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інший на чіп Active Management). Шанси виходу з ладу обох апаратних засобів одночасно на двох різних машинах дуже низькі.

Видаліть та повторно встановіть

Якщо я видалю і повторно встановіть драйвер, 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 Вчора: моя ІТ-група автоматично запустила установку оновлення до 7-Zip за допомогою EmpirumAgent.
  3. 17:48:44 Вчора: RestartManagerповідомив, що не може перезапустити Windows Explorer - Application 'C:\Windows\explorer.exe' (pid 8824) cannot be restarted - Application SID does not match Conductor SID... Я здогадуюсь, що explorer.exeперезапуск потрібен, оскільки 7-Zip встановлює розширення контекстного меню для Провідника Windows.
  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-порти мали помилку, перелічену вище.

Це звучить як проблема з драйверами. Якщо ви спробували скористатися попередньою версією драйвера, це здається, що драйвер оновлено, і новий драйвер функціонує з певної невизначеної причини. Ви хочете зосередитись на драйвері C230 Chipset та / або драйвері Active Management. В останні 2 місяці виявлено вразливість в Active Management на процесорах Intel. Intel та його партнери переробляють цю вулейкість.
Рамхаунд

Я був тим, хто намагався оновити драйвер (сьогодні), щоб виправити проблему. Я не думаю, що драйвер оновлювався раніше (крім первинної установки). Тож у мене немає нової версії або попередньої версії драйвера для встановлення. Найкраще, що я можу зробити, - це перейти на сервісний сайт Dell і спробувати встановити один із їхніх пакетів драйверів (якщо я можу знайти потрібний) для моєї машини. Я спробую це.
watkipet

Ви повинні мати змогу відкатати драйвер за допомогою диспетчера пристроїв. Зазвичай Windows зберігає попередні версії драйвера, поки користувач їх спеціально не видалить.
Рамхаунд

Кнопка "Відкат драйвера" для обох пристроїв вимкнена.
watkipet

Установка драйвера Dell як для чіпсету, так і для консолі Active Management не вплинула. Я вважаю, що драйвер чіпсета є правильним, тому що останній відомий батько на панелі "Подробиці" в Диспетчері пристроїв для драйвера є, PCI\VEN_8086&DEV_A146&SUBSYS_06B91028&REV_31\3&11583659&0&F8а в журналі встановлення для драйвера чіпсета є цей запис:12/7/2017 8:41:24 AM ** InstallDrivers ** Installing driver to device: 'PCI\VEN_8086&DEV_A146' 'C:\Users\watkinsp\AppData\Local\Temp\{55398EAC-F58E-4F19-B553-BDF8B9EFD839}\Drivers\sunrisepoint-h\sunrisepoint-hSystem.inf'
watkipet

Відповіді:


0

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

Запис у реєстрі для видалення

Я також переглянув цей ключ реєстру на машині, де завжди працювали порти COM - він не мав UpperFiltersзапису.

Я хотів би побачити ще одну відповідь, яка пояснює, чому це потрібно, мета UpperFiltersзапису та як він пошкоджується.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.