BSOD on FilterGetMessage/FltSendMessage after switch of user

EDN Admin

Well-known member
Joined
Aug 7, 2010
Messages
12,794
Location
In the Machine
I have written a mini filter driver that sends messages via FltSendMessage to client code in a user program or a service.  All works well.  If a switch between user sessions (i.e. Logoff - > Switch User), I get the BSOD on the next FilterGetMessage from the client/FltSendMessage from the driver.  This happens when the client is in a console app or a service.   The problem, I presume, must be happening when the data from the drivers buffer in FltSendMessage is copied to the clients buffer in FilterGetMessage (not async).  I have tried pinning the receive buffer address in the client (using fixed, Marshal.GlobalHAlloc, etc.), but the problem persists.  Again, if I do not switch between users all is well.  I cannot see how a switch between users should affect the state of memory in a service?  Any ideas?

View the full article
 
Back
Top