Пользовательский драйвер класса USB для Windows XP, предварительно установленный без подписи WHQL?

Я работаю над драйвером Windows для USB-устройства, и установка должна переопределить встроенный драйвер класса от Microsoft, чтобы устройство использовало мой драйвер.

Драйвер самоподписан, но не подписан WHQL. Установка не является проблемой в Vista или Win7, где SetupAPI распознает драйвер как подписанный и выбирает его в качестве предпочтительного драйвера вместо встроенного драйвера класса.

Однако это не работает в Windows XP SP3. Журнал SetupAPI сообщает мне, что он находит драйвер, но считает его ненадежным. (Выдержка из журнала: «Узел драйвера не является доверенным, ранг изменен с 0x00000001 на 0x0000c001»)

Предыдущие ответы на подобные вопросы здесь, в stackoverflow и других местах, предполагают, что подпись WHQL — единственный способ работать на XP. Это действительно так или есть какие-то известные обходные пути?

Есть ли у кого-нибудь ссылки на ресурсы с информацией об обходных путях или решении проблемы?

Я ценю любую помощь по этому вопросу.


person msp    schedule 14.04.2011    source источник


Ответы (1)


Да, это действительно так.

Возможно, я упомянул обходной путь, который мы используем в своем проекте, но для вас это не имеет значения, так как ваш продукт предназначен для широкого рынка, и вы не можете полагаться на то, что ваши устройства имеют статический идентификатор экземпляра устройства. (Чтобы поддерживать «известный» идентификатор экземпляра устройства, мы используем драйвер фильтра поверх USB-концентратора. Я упоминаю об этом только потому, что вам может быть интересно узнать об этом «загадочном» обходном пути, который мы используем.)

Кстати, может быть, вы могли бы переписать свой драйвер как драйвер фильтра устройств. На них не распространяются одинаковые ограничения WHQL.

Изменить. Если вы хотите установить свой сертификат в корневые хранилища сертификатов ваших клиентов (рискованный выбор, который может оттолкнуть ваших клиентов), для вас может быть решение: Предварительная установка USB-драйверов WinXP для возможности подключения устройства без взаимодействия

person Ilya    schedule 10.07.2011