Обновление драйвера с XP на W7 - PullRequest
0 голосов
/ 02 июня 2011

У меня есть драйвер для пользовательской карты PCI, который прекрасно работает и работает на XP.Я пытаюсь использовать это нестандартное оборудование на W7 и пытаюсь собрать и запустить мой драйвер.

Я получил последний DDK от Microsoft и собираю свой драйвер для XP с использованием Windows XP "x86 FreeПостроить среду ".Все устанавливается и работает нормально.(Сборка с использованием DDK-команды «build»)

Если я использую среду сборки Windows 7 «x86 Free Build Environment», все собирается нормально.Я запускаю его через проверки кода PREfast и staticdv, ошибок тоже нет.(Я получаю пару предупреждений о том, что «Функция отправки« FooFnc »не имеет каких-либо аннотаций __drv_dispatchType» - могут ли это быть проблемой?)

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

Так что мои вопросы:

  1. Если произошли изменения вмодель драйвера между XP и W7, как лучше найти его?Я не вижу ничего на MSDN.

  2. Как мне отладить драйвер?Коробка не запускается, так что я не могу запустить WinDBG.

  3. Какие-нибудь конкретные ошибки W7 драйвера, которые скрыты?

Я старался сделать это как можно более общим, но если бы больше деталей было полезно, я предоставлю больше

1 Ответ

0 голосов
/ 03 июня 2011

AFAIK, самые большие изменения были сделаны в видео и сетевых драйверах. Другие драйверы сохраняют обратную совместимость и могут работать на W7 даже без перекомпиляции.

Запустите драйвер под верификатором драйвера и включите создание аварийных дампов с помощью клавиатуры (очень полезно в случае зависания системы, вы можете вручную сгенерировать crashdump, проанализировать его и найти, что был неправ).

Надеюсь, это поможет!

...