ok, I tried to do some reasearch first, but haven't really found what I was looking for.

Each windows app uses a message queue that stores user input and calls the required event handler ( a simple way of putting it ... ). What I was thinking is that has to be a message queue at the kernel level, and the kernel dipatches each message to the process it belongs to ( correct me if wrong ). Now, if my assumption is true, I wonder if is there any system call to check upon this message queue and be able to view from one process what messages are dispached to other processes.


None that I know of. But you might look at a copy of Undocumented Windows book. To my knowledge events go directly from the keyboard and mouse device drivers to the thread that has input focus.