Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Before Posting...
Please check out the Community Guidelines in the Announcements and Administration Category.

Accessing PFLT_INSTANCE Instance from DriverEntry()

benjibenji Member Posts: 2


While my minifilter is living it allocates some structures with FltAllocatePoolAlignedWithTag().
Then when it dies I would like to clean them up.
But how can I retrieve a PFLT_INSTANCE from my _FLT_REGISTRATION.PFLT_FILTER_UNLOAD_CALLBACK routine in order to call FltFreePoolAlignedWithTag?
I could record this PFLT_INSTANCE in a global variable may be, but is there a nicer way to do it?

Thank you.


  • rod_widdowsonrod_widdowson Member - All Emails Posts: 1,088

    Less that a minute of googling got me FltEnumerateVolumes and FltEnumerateInstances but why not either keep them in a list that you manage (insert in your create callback and remove in your free callback).

    You also need to be aware that when you call FltTearDownFiltering(or whatever it is called), all your instances will be called at their detach entry point.

  • benjibenji Member Posts: 2

    Thank you!

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Upcoming OSR Seminars
Writing WDF Drivers 21 Oct 2019 OSR Seminar Space & ONLINE
Internals & Software Drivers 18 Nov 2019 Dulles, VA
Kernel Debugging 30 Mar 2020 OSR Seminar Space
Developing Minifilters 27 Apr 2020 OSR Seminar Space & ONLINE