Начиная с WDK для Windows 11 версии 22H2 распространяемые установщики WDF больше не поддерживаются. Чтобы узнать, как обойти это изменение, см. статью Распространяемые установщики WDF не работают в статье Известные проблемы WDK .
Поставщики USB-устройств используют совместные установщики для обновления встроенного ПО устройств, использующих драйверы USB-устройств в папке «Входящие». Однако совместное установщики не поддерживаются новым стандартом «Универсальный INF», который является требованием для Windows 10. Это создает проблему для существующего процесса обновления встроенного ПО USB-устройства. В этой статье описывается рекомендуемый метод обновления встроенного ПО USB-устройства без совместного установщика.
Требования
Основные требования процесса обновления встроенного ПО USB-устройства:
- Простое обновление встроенного ПО без взаимодействия с пользователем
- Надежный механизм восстановления (например, отсутствие кирпича устройств)
- Работает в Windows 7 и более поздних версиях
Общие сведения
USB-устройства, такие как камеры UVC, выпускаются с обновляемым встроенным встроенным микропрограммным обеспечением. Сегодня нет стандартного метода обновления встроенного ПО.
ЛУЧШАЯ ПРОГРАММА ДЛЯ ОБНОВЛЕНИЯ ДРАЙВЕРОВ
Один из элементов, который является общим для всех существующих механизмов обновления, заключается в том, что некоторый пользовательский набор программного обеспечения запускается на клиенте и загружает встроенное ПО на устройство. Как правило, в процессе установки устройства устанавливается пакет программного обеспечения для обновления встроенного ПО. Запуск совместного установщика запускает процесс обновления встроенного ПО. Отсутствие совместных установщиков на Windows 10 не позволяет поставщикам устройств обновлять встроенное ПО на этих устройствах.
Рекомендуемый способ обойти отсутствие совместного установщика для сценария обновления встроенного ПО USB-устройства — использовать драйвер более низкого фильтра для USB-устройства, который запускает процесс обновления встроенного ПО. Во время вызова AddDevice драйвер фильтра проверяет версию встроенного ПО устройства и при необходимости обновляет встроенное ПО.
Обзор обновления встроенного ПО
При подключении USB-устройства к системе для устройства устанавливается универсальный драйвер папки «Входящие». После установки универсального драйвера ОС запрашивает на сервере клиентский компонент Центра обновления Windows доступность пакета драйверов для конкретного поставщика, загружает его и устанавливает драйвер. Установленный пакет драйверов выполняет обновление встроенного ПО.
Существует два способа обновления встроенного ПО:
- Драйвер фильтра обновления встроенного ПО
- Поставщик предоставил драйвер более низкого фильтра, который выполняет обновление встроенного ПО.
- Поставщик предоставил более низкий драйвер фильтра, который переводит устройство в «режим обновления встроенного ПО».
- Устройство перечисляется как устройство обновления встроенного ПО.
- Предоставленный поставщиком драйвер обновления встроенного ПО загружается для этого устройства и обновляет встроенное ПО.
Способ 1. Драйвер фильтра обновления встроенного ПО
В этом методе драйвер более низкого фильтра для драйвера USB-устройства устанавливается в процессе обновления драйвера. Этот драйвер фильтра выполняет обновление встроенного ПО.
Лучшие программы для установки драйверов на Windows
Пакет обновления драйверов на сервере клиентский компонент Центра обновления Windows содержит:
- Драйвер нижнего фильтра WDF обновления встроенного ПО
- Расширение INF для установки драйвера нижнего фильтра WDF обновления встроенного ПО
- Файл firmware.bin
При установке пакета обновления драйверов вызывается подпрограмма AddDevice драйвера фильтра WDF обновления встроенного ПО. Из этой процедуры драйвер фильтра WDF получает версию встроенного ПО устройства из раздела реестра HW устройства. Встроенное ПО устройства должно поместить версию встроенного ПО с помощью дескриптора MSOS в раздел реестра HW устройства.
- Если версия встроенного ПО устройства и ожидаемая версия драйвера фильтра отличаются, или
- Версия встроенного ПО недоступна в разделе реестра HW устройства
- Затем драйвер фильтра вставляется в стек устройств, возвращая успешное выполнение обратного вызова AddDevice .
- Так как обновление встроенного ПО не требуется, так как устройство имеет ожидаемое встроенное ПО.
При последующем вызове обратного вызова драйвера фильтра WDF EVT_WDF_DEVICE_D0_ENTRY драйвер фильтра должен зарегистрироваться для получения уведомлений об изменении интерфейса устройства с помощью CM_Register_Notification или IoRegisterPlugPlayNotification (UMDF или KMDF), чтобы прослушивать класс интерфейса устройства, в который БУДЕТ зарегистрировано УСТРОЙСТВО USB. Например, драйвер фильтра обновления встроенного ПО для RGB-камеры регистрируется для KSCATEGORY_VIDEO_CAMERA. Получив уведомление, драйвер фильтра должен опубликовать рабочий элемент, который будет выполнять обновление встроенного ПО.
Драйверы обновления встроенного ПО на основе UMDF могут использовать API для конкретного устройства или передавать управление напрямую для доступа к USB-устройству для выполнения обновления встроенного ПО. Например, драйвер фильтра на основе UMDF для камеры будет использовать API камеры для выполнения обновления встроенного ПО.
Драйверы обновления встроенного ПО на основе KMDF могут отправлять конкретные команды поставщика для выполнения обновления встроенного ПО.
После завершения установки встроенного ПО устройство должно отключиться и повторно подключиться к шине. Устройство повторно перечисляется с новым встроенным ПО.
Метод использования «драйвера фильтра обновления встроенного ПО» рекомендуется использовать для устройств, у которых достаточно ресурсов для хранения двух полных образов встроенного ПО (образа обновления и образа резервной копии) в памяти устройства. Причина в том, что если во время скачивания обновленного встроенного ПО произошли сбои, устройство может отказаться от обновления и загрузить исходное встроенное ПО. Таким образом, не заготовка устройства.
Метод 2. Обновление драйвера устройства встроенного ПО
В этом методе драйвер нижнего фильтра для USB-устройства будет установлен в процессе обновления драйвера. Этот драйвер фильтра отправляет на устройство команду для перезапуска в режиме обновления встроенного ПО, где устройство предоставляет интерфейс обновления встроенного ПО. Драйвер для интерфейса обновления встроенного ПО загрузит и выполнит обновление встроенного ПО.
Пакет обновления драйверов на сервере клиентский компонент Центра обновления Windows для устройства содержит:
- Драйвер нижнего фильтра WDF, который помещает устройство в режим обновления встроенного ПО
- Расширение INF для установки драйвера нижнего фильтра WDF
В дополнение к пакету обновления драйверов на клиентский компонент Центра обновления Windows присутствует отдельный пакет драйвера устройства обновления встроенного ПО со следующими параметрами:
- Обновление встроенного ПО WDF для драйвера устройства и его INF-файлов, а также
- Файл firmware.bin.
При установке пакета обновления драйвера вызывается подпрограмма AddDevice драйвера нижнего фильтра WDF. В этой процедуре драйвер фильтра запрашивает версию встроенного ПО устройства из раздела реестра HW устройства. Встроенное ПО устройства должно поместить «версию встроенного ПО» с помощью дескриптора MSOS или расширения РАСШИРЕНИЯ USB-устройства в раздел реестра HW устройства.
- Если версия встроенного ПО устройства и драйвер фильтра, ожидаемые версии встроенного ПО отличаются, или
- Версия встроенного ПО недоступна в разделе реестра HW устройства
- Затем драйвер фильтра WDF вставляется в стек устройств.
- В противном случае драйвер фильтра WDF не будет вставляться в стек устройств.
При последующем вызове обратного вызова EVT_WDF_DEVICE_D0_ENTRY драйвера фильтра WDF драйвер фильтра выдает определенную поставщиком команду для устройства, которая переместит его в режим обновления встроенного ПО. т. е. Устройство отключается и повторно подключается, предоставляя интерфейс обновления встроенного ПО.
Система перечисляет интерфейс устройства обновления встроенного ПО. Для этого интерфейса обновления встроенного ПО будет загружен пользовательский драйвер WDF обновления встроенного ПО, предоставленный поставщиком в пакете обновления встроенного ПО. Этот драйвер обновляет встроенное ПО.
При последующем вызове обратного вызова EVT_WDF_DEVICE_D0_ENTRY драйвера обновления встроенного ПО WDF драйвер должен опубликовать рабочий элемент, который будет выполнять обновление встроенного ПО.
После завершения установки встроенного ПО устройство должно отключиться и повторно подключиться к шине. Устройство повторно перечисляется с новым встроенным ПО.
Этот метод рекомендуется использовать для устройств, которые не могут содержать обновленные и исходные образы встроенного ПО из-за нехватки памяти на устройстве. Причина в том, что если во время загрузки обновленного встроенного ПО произошли сбои, устройство может отказаться от обновления и снова загрузить устройство в режим обновления встроенного ПО, а обновление встроенного ПО может быть выполнено повторно. Таким образом, не заготовка устройства.
Восстановление
Процесс обновления встроенного ПО может завершиться ошибкой по различным причинам. В этом случае при повторном перечислении устройства драйвер обновления встроенного ПО может повторить попытку обновления встроенного ПО и снова завершиться сбоем. Процесс обновления может завершиться циклом.
Драйвер обновления встроенного ПО должен установить верхний предел на количество повторных попыток, которые он может выполнить. При повторных попытках обновления встроенного ПО выходит за пределы порогового значения (например, 3 повторных попытки), драйвер фильтра не должен пытаться снова обновить встроенное ПО, пока новая версия драйвера не будет загружена из Центра обновления Windows. Драйвер обновления встроенного ПО может использовать реестр для сохранения состояний повторных попыток.
По окончании обновления встроенного ПО устройства рекомендуется выполнить сброс и повторное перечисление.
Оба метода обновления встроенного ПО, функция устройства должна быть остановлена перед обновлением встроенного ПО. Это гарантирует отсутствие открытого дескриптора для устройства и позволяет избежать необходимости перезапуска ОС.
Пример INF
;============================================================================== ; Microsoft Extension INF for USB Camera Firmware Update UMDF Filter Driver ; Copyright (C) Microsoft Corporation. All rights reserved. ;============================================================================== [Version] Signature=»$WINDOWS NT$» Class=Extension ClassGUID= Provider=%CONTOSO% ExtensionId= ; replace with your own GUID CatalogFile.NT=SampleExtension.cat DriverVer=08/28/2017,10.0.1700.000 PnpLockdown=1 [SourceDisksFiles] ContosoFirmwareUpdateFilterDriver.dll=1 ContosoFirmware.bin=1 [SourceDisksNames] 1 = %MediaDescription% [DestinationDirs] UMDriverCopy=12,UMDF ; copy to driversUMDF ContosoFirmwareCopy=12,ContosoFirmware ; copy to driversContosoFirmware DefaultDestDir = 12 [UMDriverCopy] ContosoFirmwareUpdateFilterDriver.dll [ContosoFirmwareCopy] ContosoFirmware.bin [Manufacturer] %CONTOSO% = ContosoFirmwareUpdateFilterDriver,ntamd64 [ContosoFirmwareUpdateFilterDriver.ntamd64] ; replace with your camera device VID PID %ContosoCamera.DeviceDesc% = ContosoFirmwareUpdateFilterDriver_Install, USBVID_1234REV_1234 [ContosoFirmwareUpdateFilterDriver_Install] CopyFiles=UMDriverCopy, ContosoFirmwareCopy [ContosoFirmwareUpdateFilterDriver_Install.HW] AddReg = ContosoFirmwareUpdateFilterDriver.AddReg [ContosoFirmwareUpdateFilterDriver.AddReg] ; Load the redirector as an lower filter on this specific device. ; 0x00010008 — FLG_ADDREG_TYPE_MULTI_SZ | FLG_ADDREG_APPEND HKR,,»LowerFilters»,0x00010008,»WUDFRd» [ContosoFirmwareUpdateFilterDriver_Install.Services] AddService=WUDFRd,0x000001f8,WUDFRD_ServiceInstall [WUDFRD_ServiceInstall] DisplayName = %WudfRdDisplayName% ServiceType = 1 StartType = 3 ErrorControl = 1 ServiceBinary = %12%WUDFRd.sys [ContosoFirmwareUpdateFilterDriver_Install.Wdf] UmdfService=ContosoFirmwareUpdateFilterDriver, ContosoFirmwareUpdateFilterDriver.UmdfFilter UmdfServiceOrder=ContosoFirmwareUpdateFilterDriver [ContosoFirmwareUpdateFilterDriver.UmdfFilter] UmdfLibraryVersion=2.0.0 ServiceBinary= «%12%UMDFContosoFirmwareUpdateFilterDriver.dll» [Strings] CONTOSO = «Contoso Inc.» ContosoCamera.DeviceDesc = «Contoso Camera Extension» MediaDescription=»Contoso Camera Firmware Update Filter Driver Installation Media» WudfRdDisplayName = «WDF Reflector Driver»
Источник: learn.microsoft.com
Как обновить драйверы USB в Windows 10?
Один из самых простых и популярных способов подключения любого внешнего устройства к компьютеру — через разъем. универсальная последовательная шина или сокращенно USB. Все производители устройств предоставляют USB-порт для подключения, а производители ноутбуков предоставляют более пары USB-портов. Это подводит нас к сегодняшней теме о том, как обновить драйверы USB в Windows 10, но также возникает следующий вопрос; действительно ли важно обновлять драйверы USB?
Драйверы — это небольшие программы или код, которые помогают установить связь между программным обеспечением и оборудованием. Другими словами, если драйверы USB не обновлены, любое устройство, подключенное к портам USB, со временем не будет распознаваться или обнаруживаться компьютером. Когда у вас возникают проблемы с USB-устройствами, особенно когда они не работают или плохо работают, первое, что нужно сделать, — это обновить драйверы USB в Windows 10.
Различные методы обновления USB-драйверов в Windows 10?
Существует три метода обновления через USB в Windows 10. Все они подробно описаны ниже.
Способ 1: сайт производителя
Первый способ обновить драйверы — найти, загрузить и установить их с сайта производителя. У всех производителей оборудования есть специальный веб-сайт, на котором пользователи могут найти драйверы для своей продукции. Просто укажите марку и номер модели оборудования.
Если вы обновляете драйверы USB в Windows 10, вам следует искать драйверы материнской платы или набора микросхем. Драйверы USB не будут доступны отдельно, поскольку они являются частью схемы на материнской плате, а не процессором.
Метод 2: Центр обновления Windows
Переходя ко второму способу, вы можете использовать функцию Центр обновления Windows для обновления драйверов. Microsoft предоставляет своим пользователям Windows 10 регулярные исправления, связанные с приложениями, безопасностью, драйверами и т. Д. Большинство производителей оборудования разрабатывают исправления драйверов и отправляют их исследовательской группе Microsoft, которая затем проверяет и анализирует исправление драйвера перед его выпуском для пользователей Windows 10. Однако обновление Windows для драйверов USB — это медленный процесс, поскольку эти исправления загружаются только с сайта Microsoft. Сервер.
Ниже приведены шаги для запуска Центра обновления Windows для USB-драйверов на ПК:
- Нажмите Windows + I, чтобы открыть окно настроек.
- Выберите «Обновление и безопасность» и нажмите «Центр обновления Windows» на левой панели окна.
- Теперь нажмите кнопку «Проверить наличие обновлений» на правой панели и следуйте инструкциям на экране.
- Перезагрузите компьютер после завершения процесса обновления, чтобы изменения вступили в силу.
Примечание. Если производитель не отправил последнее обновление на серверы Microsoft, вы не сможете загрузить его в свою систему с помощью этого метода.
Метод 3: диспетчер устройств
Следующим методом обновления драйверов в Windows 10 является использование встроенной утилиты драйверов Microsoft, известной как Управление устройством. Этот инструмент хранит все записи об установленных в вашей системе драйверах и отображает классифицированный список оборудования на вашем ПК. В отличие от обновлений Windows, пользователи могут использовать Диспетчер устройств для загрузки драйверов для определенного оборудования точно так же, как драйверы USB.
Обновления Windows состоят из больших файлов и загружаемых файлов, которые включают множество исправлений, кроме драйверов. Вот шаги, чтобы использовать Диспетчер устройств на ПК с Windows 10:
- Нажмите Windows + I на клавиатуре и введите devmgmt.msc в текстовое поле, а затем нажмите Enter.
- Откроется новое окно со всеми драйверами, установленными в системе. Прокрутите вниз и найдите контроллеры универсальной последовательной шины.
- Щелкните USB, чтобы отобразить раскрывающееся меню, затем щелкните правой кнопкой мыши каждый элемент, чтобы отобразить контекстное меню, и выберите параметр «Обновить драйвер».
- Затем нажмите «Автоматический поиск обновленного программного обеспечения драйвера», и Windows автоматически выполнит поиск и загрузит последнюю версию драйвера.
Последнее слово о том, как обновить драйверы USB в Windows 10?
Если вы заметили, что не можете подключать и использовать устройства через порт USB, обновление драйверов USB в Windows 10 является одним из лучших возможных решений. Вы можете использовать любое из трех решений, представленных выше.
Источник: ixed.ru
USB драйвер
Проблема с USB входами одинаково часто может возникать как на стационарных компьютерах, так и на ноутбуках. Многие пользователи столкнулись с тем, что нормальное функционирование портов для подключения различных устройств, прерывалось и не получалось включить то или иное приспособление. Причин, по которым это случается бывает очень много:
- Сгорели контакты;
- Неправильное использование входа;
- Механическое повреждение;
- Проблема с драйверами.
На нашем интернет-сайте Вы можете найти универсальный USB драйвер для Windows 10, скачать этот компонент и установить на свой персональный компьютер или ноутбук.
Важность драйверов для работы USB-портов
Обычному пользователю сложно определить причину поломки одного из входов. Приходится отвозить свой ПК в ремонт и платить за это деньги. А ведь в большинстве случаев, поломка ограничилась тем, что «слетели» драйвера. Стоит только скачать новую версию и установить её, как всё приходит в норму. Это как с тачпадами для ноутбуков ASUS, которые могут не работать без ASUS Smart Gesture.
Возможности USB драйвера для Виндовс 10
Если Вы решили скачать USB драйвер для Windows 10, обязательно ознакомьтесь с возможностями данного компонента, что позволит на 100% использовать все функции.
Помимо восстановления работоспособности входов, с помощью дополнительного драйвера, можно ускорить работу современных портов. Вы уже слышали о том, что существуют входы USB 2.0 и USB 3.0? Второй вариант отличается высокой скоростью работы и позволяет быстро передавать данные, при копировании с накопительного устройства. Естественно, без драйверов, этот порт будет оставаться таким-же медленным, как и предыдущая версия.
Воспользуйтесь нашим интерне-сайтом для того чтобы скачать USB driver для Windows 10 и гарантировать себе бесперебойную работу входов, в которые мы подключаем:
- Флешки;
- Веб-камеры;
- Компьютерные мыши;
- Клавиатуры;
- Принтеры и т.д.
Уверенны, что проблема с данными устройствами не радует Вас и Вы желаете, как можно скорее от неё избавиться. Но тут есть одна серьезная трудность – все производители портов отличаются друг от друга. Поэтому, вероятно, потребуется установить специальное ПО, как например, Driver Pack Solution, которое сможет автоматически определить, какой аппарат у вас установлен и уже исходя из этого загрузит необходимое ПО. Именно этот софт вы можете скачать на этой странице.
Источник: win10m.ru