Identifier le clavier [fermé]
Question
J'ai deux claviers connectés à mon PC. Y a-t-il un moyen de savoir sur quel clavier une touche a été enfoncée dans n'importe quelle langue ou structure?
La solution
Sous Windows, vous pouvez enregistrer votre application pour recevoir notifications brutes avec le RegisterRawInputDevices API. Une fois que vous vous êtes inscrit, votre application commence à recevoir des WM_INPUT messages. Le lParam de ce message est un pointeur sur un RAWINPUT structure. Vous pouvez utiliser l'API GetRawInputData pour obtenir le en-tête sous la forme de la structure RAWINPUTHEADER . Ensuite, vous pouvez utiliser le GetRawInputDeviceInfo sur le périphérique. manipulez l'en-tête pour extraire les informations du périphérique qui a généré l'entrée.
Je ne connais pas d'autres moyens d'obtenir le périphérique qui a généré l'entrée au clavier sous Windows.
Je ne sais pas non plus comment résoudre ce problème sur d'autres systèmes d'exploitation.