The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.
Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/
I've been working in a software device driver, similar to the "echo" sample available at MS github (https://github.com/microsoft/Windows-driver-samples/tree/main/general/echo/kmdf/driver/AutoSync). The driver is working fine. However, it is currently using not properly signed, needing to use "test signatures" and turn off secure boot.
I'm trying to get driver signed and need to submit a request to MS, after running succesfully the tests in Windows Hardware Lab Kit (WHLK). As I was struggling with WHLK with my driver, I decided to try with the exact code of the github sample. However, the signature process behavior is the same....
When I install the driver in the machine running WHLK, WHLK lists my driver in the category "device manager".
Then, it enforces me to run 58 tests, including some related to hardware such as ARM stuff, as figure below shows. My driver is not able to pass through all those tests, failing 6 of them. I've already tried to update the WHLK filters. Besides that, running these 58 tests take a long time.
As the driver has no direct iteraction with a specific hardware device, I would like that my driver was listed in "software device" category. In this case, the tests are related to what my driver really does. Also, the amount of tests needed to run is reduced and take a reasonable time. I'd like to know what may I do to achieve that or if anyone know how this classification is done in WHLK. I've already tried to switch the class (and classguid) in INF file, but the result is always the same (my driver in the category "device manager").
My current guess is that this behavior (always be considered as a "device manager" driver) is related to the way that I install the driver in the machine where WHLK runs. I'm using devcon to do that. Is it possible to achieve my driver as a "software device" using devcon ? Or, in this case, should I install my driver of another way ?
Appreciate any tips or comments.
|Upcoming OSR Seminars
|OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
|13-17 May 2024
|1-5 Apr 2024
|Internals & Software Drivers
|11-15 Mar 2024
|Writing WDF Drivers
|20-24 May 2024