What’s a “thread input queue”? I’ve seen it mentioned on MSDN a few times, and can stop wondering whether it’s simply the message queue for a window, that’s created by the thread they mean, or something else.
An example:
The WH_MOUSE_LL hook enables you to monitor mouse input events about
to be posted in a thread input queue.
Firstly, note that windows don’t have individual message queues; messages for a window are deposited in the message queue of the associated thread.
According to MSDN, keyboard and mouse input messages are sent to the message queue of the thread associated with the relevant window. So I believe that “thread input queue” is simply another way of saying “thread message queue”.
EDIT: Raymond has pointed out (see comments) that input can be redirected to a different thread’s message queue using the AttachThreadInput function. So, “thread input queue” means whichever message queue is receiving input for the given thread; by default this is the same thread’s message queue, but it can be the message queue for a different thread.