VBA - récupération code claviers
Résolu
yrqt
-
yrqt -
yrqt -
Bonjour,
Je souhaiterais récuperer le code d'un clavier.
Je m'explique, j'ai actuellement deux lecteurs de codes barres que j'ai branché sur mon ordinateur portable par liaison USB. Lorsqu'elles sont paramétré, elle apparaisse comme des claviers.
J'ai donc effectué un programme sous Excel afin d'y développer un magasin de produit. Or, j'ai besoin de savoir quel douchette j'appuie actuellement.
Pour cela, je pense qu'il doit y avoir un code me permettant de savoir quel clavier est utilisé à l'instant T, et de ce fait, je saurais utilisé les fonctions adéquat.
Vous remerciant par avance.
Bonne soirée. Cordialement
Yrqt
Je souhaiterais récuperer le code d'un clavier.
Je m'explique, j'ai actuellement deux lecteurs de codes barres que j'ai branché sur mon ordinateur portable par liaison USB. Lorsqu'elles sont paramétré, elle apparaisse comme des claviers.
J'ai donc effectué un programme sous Excel afin d'y développer un magasin de produit. Or, j'ai besoin de savoir quel douchette j'appuie actuellement.
Pour cela, je pense qu'il doit y avoir un code me permettant de savoir quel clavier est utilisé à l'instant T, et de ce fait, je saurais utilisé les fonctions adéquat.
Vous remerciant par avance.
Bonne soirée. Cordialement
Yrqt
A voir également:
- VBA - récupération code claviers
- Code ascii - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code blocks - Télécharger - Langages
2 réponses
Bonjour,
une piste par une fonction API.
GetKeyboardLayoutName :
The GetKeyboardLayoutName function retrieves the name of the active keyboard layout.
Voir ce que ça donne.
eric
une piste par une fonction API.
GetKeyboardLayoutName :
The GetKeyboardLayoutName function retrieves the name of the active keyboard layout.
Const KL_NAMELENGTH = 9 Private Declare Function GetKeyboardLayoutName Lib "user32" Alias "GetKeyboardLayoutNameA" (ByVal pwszKLID As String) As Long Private Sub test() Dim strName As String 'Create a buffer strName = String(KL_NAMELENGTH, 0) 'récupérer keyboard layout name GetKeyboardLayoutName strName MsgBox strName End Sub
Voir ce que ça donne.
eric
Sur excel tu n'auras rien je pense.
Dans les fonctions API tu as également GetKeyboardType() mais si c'est le même matériel ils te retourneront la même chose également.
Une suggestion : te faire 2 étiquettes dédiées avec un code particulier que tu scannerais en premier à chaque fois que tu changes de douchette.
Dans le programme dès que tu lis ce code tu sais que ça correspond à l'identification de la douchette et non à un produit.
eric
Dans les fonctions API tu as également GetKeyboardType() mais si c'est le même matériel ils te retourneront la même chose également.
Une suggestion : te faire 2 étiquettes dédiées avec un code particulier que tu scannerais en premier à chaque fois que tu changes de douchette.
Dans le programme dès que tu lis ce code tu sais que ça correspond à l'identification de la douchette et non à un produit.
eric
Tout d'abord, un merci pour la réponse rapide de votre part.
Es-t-il possible d'avoir des précisions sur le fonctionnement ?
Tu copie-colles le code et tu testes pour voir si vraiment tu n'as qu'une seule douchette d'active en même temps, et si elles te retournent 2 codes différents.
Je ne pourrai t'aider plus.
eric
Yoan
Excuse moi de te déranger une nouvelle fois, mais j'ai effectuer l'execution de ton code, mais cela ne fonctionne pas. En effet, quel que soit le matériel que j'utilise, il me met "0000040C".
As tu une solution ?
J'ai regarder en parallèle pour récupérer le nom ou autre pour dissocier les deux matériels, mais pas moyens de trouver....
Bonne soirée.