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

Soyez le premier à donner votre avis sur cette source.

Vue 14 523 fois - Téléchargée 2 893 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.
Afficher les 10 commentaires

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.