Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results
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/
Are there any such differences? suddenly a minifilter I'm working on won't load on win server (tried 2016, 2019), and I get the message "The specified procedure could not be found.". However the same driver loads just fine on various client versions of win 10 (tried LTSC 2021, 20H2). I also see the same thing happening on testsigned builds and MS attestation signed ones. I initially was using WDK 10.0.22621.382, and also tried 10.0.22621.2428.
I see that often this error indicates a missing dependency, and running https://github.com/lucasg/Dependencies does show that fltmgr.sys and ksecdd.sys are missing. In .vcxproj I'm linking to both of the static libs however: $(DDK_LIB_PATH)fltmgr.lib;$(DDK_LIB_PATH)ksecdd.lib
Given all that, I've got two questions for any benevolent WDK whisperers out there: what does it mean that dependencies claims it can't find some libraries? and if that's an issue, why would the driver run on client versions, and not server versions?
Appreciate any advice or tips anyone has to offer, thanks.
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! | ||
Kernel Debugging | 13-17 May 2024 | Live, Online |
Developing Minifilters | 1-5 Apr 2024 | Live, Online |
Internals & Software Drivers | 11-15 Mar 2024 | Live, Online |
Writing WDF Drivers | 26 Feb - 1 Mar 2024 | Live, Online |
Comments
Are you using ExAllocateFromLookasideListEx?
Check the CAUTION notice on its documentation.
https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/nf-wdm-exallocatefromlookasidelistex#:~:text=Caution,Driver Settings->General.
Regards,
—
Fernando Roberto da Silva
DriverEntry Kernel Development
http://www.driverentry.com.br
ok, I finally figured out what my problem was, and it wasn't really related to client vs. server.
it was due to replacing usage of ExAllocatePoolWithTag with ExAllocatePool2, since MSVC raises a warning that the former is deprecated.. doing so caused the driver to fail to load on win 10 versions earlier than 2004. reverting that change fixed things. in the long term I guess I need to follow the guidance here https://learn.microsoft.com/en-us/windows-hardware/drivers/kernel/updating-deprecated-exallocatepool-calls