EDN Admin
Well-known member
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
View the full article