How to distinguish Multiple Keyboards in Delphi?

I have two keyboards attached to a PC. One is used to type in TMemo1 and the other in TMemo2. Both are allowed to type at the same time. The problem is I cannot distinguish what keyboard-one has typed and what keyboard-two has typed.

Is there any way to distinguish, which device certain input came from?


Solution 1:

@Dian, you can use the RegisterRawInputDevices function to register the keyboards and monitor the WM_INPUT message to determine the device (keyboard) where the input came from.

check theses links for more info

  • Using Raw Input from C# to handle multiple keyboards
  • WM_INPUT Message