Hook clavier, keydown, keyup, api, simple, touche, interruption, tache de fond, spy, espion

Soyez le premier à donner votre avis sur cette source.

Vue 14 719 fois - Téléchargée 2 923 fois

Description

Ce code est très simple et permet de détecter dès qu'une touche clavier est enfoncée ou levée.

Il détecte également les touches combinées (shift + ...). Il n'affiche pas la lettre de la touche enfoncée (car je n'en ai pas besoin).

Il peut etre lancé en tache de fond, sans avoir le focus.

Il pourra vous servir de base pour etre évolué. Si vous l'améliorez, vos sources m'interrèssent ;o)

Codes Sources

A voir également

Ajouter un commentaire Commentaires
cs_hwoarang Messages postés 18 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 27 juin 2008
8 avril 2007 à 22:09
Merci beaucoup. Je cherchais justement les évenements associés à la pression d'une touche...
Rico 95 Messages postés 18 Date d'inscription mardi 13 mars 2007 Statut Membre Dernière intervention 21 mai 2008
14 mars 2007 à 20:24
Salut,

Ce code me paraît très intéressant...

Par contre j'ai du mal à comprendre quels sont les arguments que je doit utiliser en entrer pour faire tourner cette fonction

Merci d'avance

Rico
cs_zifnig Messages postés 16 Date d'inscription vendredi 10 septembre 2004 Statut Membre Dernière intervention 28 mai 2007
12 sept. 2006 à 14:12
Salut,

Je cherche à faire un soft qui permettrait de remplacer une touche tapée au clavier par une autre avant qu'elle soit transmise à l'application active. Y a-t-il une solution en VB?
ntm113 Messages postés 12 Date d'inscription dimanche 19 octobre 2003 Statut Membre Dernière intervention 20 juillet 2006
19 juil. 2006 à 00:58
Bonne idée ce code, mais la fonction HookEtatKeyProc est gérée de façon très approximative.

L'argument lParam se récupère ByRef et son type est KBDLLHOOKSTRUCT dont voici la définition :

Type KBDLLHOOKSTRUCT
vkCode As Long
scanCode As Long
flags As Long
time As Long
dwExtraInfo As Long
End Type

Le code de la touche concernée se trouve dans lParam.vkCode, donc pour tester s'il s'agit de la touche "S" il faut faire :
If lParam.vkCode = asc("S")...
ou bien
If lParam.vkCode = vbKeyS...
krtr Messages postés 2 Date d'inscription mardi 21 février 2006 Statut Membre Dernière intervention 22 février 2006
22 févr. 2006 à 11:54
Merci pour ta reponse, mais je vien de tester et c'est toujours le meme code qui apparait avec differentes touches, alors si vous pouviez m'aiguiller un peu sur la variable contenant le code de la touche ce serait sympa. A mon avis je ne dois pas faire ce qu'il faut mais bon...

Merci encore.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.