Отладка драйвера образца косвенного отображения (UMDF) из последней версии WDK - PullRequest
0 голосов
/ 09 апреля 2020

Я использую (неизмененный) пример IddSampleApp (UMDF Indirect Display) из WDK Windows 10 [1903]. Я построил решение, которое состоит из тестового приложения и драйвера (подписанного тестовым сертификатом).

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

С отключением принудительной подписи драйверов на тестовой виртуальной машине Windows 10 Pro [1903], похоже, установка прошла успешно. Ничего не отображается в диспетчере устройств, пока я не запустил тестовую программу, которая просто вызывает SwDeviceCreate для перечисления устройства и затем ждет нажатия клавиши для выхода.

После успешного завершения перечисления устройство отображается в Диспетчер устройств в разделе «Другие устройства» со значком предупреждения (/!). Глядя на Свойства и Подробности, устройство выглядит в ненастроенном или неправильно настроенном состоянии:

This device is not configured correctly. (Code 1)
This operation returned because the timeout period expired.
To find a driver for this device, click Update Driver.
  1. Является ли «ненастроенным» правильно 'состояние причины или признака?

  2. При запуске IddSampleTest.exe я никогда не вижу, чтобы WUDFHost.exe появлялся в удаленном отладчике после вызова SwDeviceCreate. Обратный вызов создания в тестовом приложении кажется для передачи ненулевого дескриптора. Не уверен, что здесь ожидать; я не должен видеть, как загружается IddSampleDriver?

  3. На топи c непрозрачных типов WDF, таких как HSWDEVICE, WDFDRIVER, WDFDEVICE и др. c., Есть ли способ визуализировать / изучить их в отладчике Visual Studio?

- Спасибо

...