Is it possible to use Windows Raw Input API without a window (ie from a console application)?
I\'ve tried using RegisterRawInputDevices but my message loops doesn\'
That way I did it (not sure it is the most comfortable way...):
I have started a thread (for the task of filling my input buffer). In this thread I have created a message-only window (its hidden, and can get input datas) with an appropriate window-class.
Then registered the raw input devices.
This thread has its own message handler loop. In the WindowProc of the window-class I've handled the inputs.
(For buffer, You can use boost:circular_buffer, it ROCKS! :D)
In this solution You did need have a window, but it looks like You don't. :)
I hope this can help.
Do you mean RegisterRawInputDevices?
Since the RAWINPUTDEVICE
structure requires you to specify an HWND
to receive the WM_INPUT
messages, no it's not possible to do this without a window.
Console applications can create windows, and the window probably can receive WM_INPUT
while hidden, but you do need a window.