J'ai deux claviers connectés à mon PC, est-il possible de savoir sur quel clavier une touche a été enfoncée dans n'importe quelle langue ou cadre?Identifier le clavier
Répondre
Pour Windows, vous pouvez enregistrer votre application pour recevoir des notifications raw input avec l'API RegisterRawInputDevices. Une fois que vous êtes enregistré, votre application va commencer à recevoir les messages WM_INPUT. Le lParam à ce message est un pointeur vers une structure RAWINPUT. Vous pouvez utiliser l'API GetRawInputData pour obtenir l'en-tête sous la forme RAWINPUTHEADER structure. Ensuite, vous pouvez utiliser le GetRawInputDeviceInfo sur la poignée de l'appareil à partir de l'en-tête pour extraire des informations pour le périphérique qui a généré l'entrée.
Je ne suis pas au courant d'autres façons d'obtenir le périphérique qui a généré l'entrée au clavier sur Windows.
Je n'ai également aucune idée de la façon de résoudre ce problème sur les autres systèmes d'exploitation.
Merci! GetRawInputData est ci-dessus ci-dessous ou au même niveau avec DirectInput de DirectX? –
Est-ce que quelqu'un sait la solution sur Linux pour cela? Ce serait intéressant à savoir. :) – Cheery
Pour être honnête, je ne suis pas sûr de la façon dont les entrées brutes se rapportent à DirectInput. –