Как ускорить первоначальную загрузку драйвера устройства Windows для устройства USB? - PullRequest
1 голос
/ 07 июля 2011

У нас есть несколько коробок под управлением Windows XP для автоматизированного производственного процесса. Я (не я лично, а робот) подключаю новые USB-устройства к этим коробкам. Существует драйвер устройства для этого типа устройства, и он загружается после подключения устройства и работает как чудо-кнопка.

Но ... требуется от 8 до 10 секунд после подключения нового устройства, пока оно не станет доступным. Когда я снова подключаю уже замеченное ранее устройство , это занимает всего 3 секунды. В драйвере есть файл каталога. Он не подписан Microsoft WHQL, но использует тестовый сертификат, который мы установили на машинах.

Необходимо рассмотреть только один файл inf / pnf, и поэтому мне интересно, почему так долго требуется обнаружить новое устройство, создать информацию в реестре и загрузить драйвер. Время - деньги, и поэтому мне нужно ускорить процесс.

Любые намеки для меня? Особенно кто-то знает , что WHQL-сертифицированные драйверы быстрее распознаются Windows / диспетчером устройств?

1 Ответ

1 голос
/ 07 июля 2011

Эти устройства имеют уникальные серийные номера, верно?Это часть того, что Windows использует для создания данных для каждого экземпляра, необходимых для отслеживания того, просматривалось ли ранее это устройство.В случае, если вы подключаете устройство, которое уже видели ранее, Windows подберет данные старого экземпляра и загрузит соответствующий драйвер.Если вы подключаете устройство, которое Windows никогда раньше не видела (например, тот же VID / PID, но другой серийный номер), оно должно пройти через процесс создания записей реестра, анализа INF-файлов, чтобы найти правильный драйвер и т. Д.

Вы уверены, что те устройства, которые быстро отображаются с драйверами WHQL, никогда ранее не подключались к системе?Кроме того, настроены ли эти системы для подключения к Центру обновления Windows для поиска драйверов при подключении нового устройства?Определенно верно, что Windows предпочтет драйвер WHQL вместо неподписанного (или самоподписанного) пакета, поэтому вполне возможно, что Windows изо всех сил пытается найти что-то еще, прежде чем по умолчанию использовать самоподписанный драйвер.

-scott

...