Simulation de touches

hardouz
Messages postés
196
Date d'inscription
jeudi 22 février 2007
Statut
Membre
Dernière intervention
26 novembre 2009
- 5 juin 2007 à 14:12
cs_rt15
Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
- 6 juin 2007 à 10:27
Pour simuler une touche du clavier en ecrie
KeyBd_Event(VK_Touche,0,0,0); //enfoncé
KeyBd_Event(VK_Touche,0,1,0);  //relacher
quelq'un peut m'éxpliquer les 0 et les 1 ???? a quoi sert ? pour quoi il nya pas un seul 0 et 1 seul 1 ???

5 réponses

Utilisateur anonyme
5 juin 2007 à 14:52
Salut,

Qui c'est qui va se faire engueuler par Francky car il a pas cherché  : ? C'est Hardouz, le roi du keylogger  dit aussi le roi de la boulette .

Mon petit poussin, si au lieu de poser cette question, forte intéressante je te l'accorde, tu avais pris un tout petit peu la peine de chercher, mais vraiment un chouilla, tu aurais eu ta réponse avec une rapidité fulgurante : un truc tu en restes sur les fesses. Allez je t'ai assez chambré : la réponse est ici.

Par contre on n'a rien contre un ptit bonjour et un ptit merci 
0
f0xi
Messages postés
4205
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
12 mars 2022
37
5 juin 2007 à 14:56
// Simulate a key press
keybd_event( VK_NUMLOCK,
$45,
KEYEVENTF_EXTENDEDKEY or 0,
0 );

// Simulate a key release
keybd_event( VK_NUMLOCK,
$45,
KEYEVENTF_EXTENDEDKEY or KEYEVENTF_KEYUP,
0);




http://msdn2.microsoft.com/en-us/library/ms646304.aspx




<hr size="2" width="100%" />
Croc (click me)
0
Cirec
Messages postés
3832
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
17 février 2022
48
5 juin 2007 à 16:33
Salut,

Petit complément a l'éxemple donné par  F0xi :

  KEYEVENTF_EXTENDEDKEY = 1;
  KEYEVENTF_KEYUP = 2;

Donc déjà ton code de départ n'était pas juste

<hr size="2" width="100%" />

@F0xi :

aurais-tu une explication à ceci

Pour le deuxième argument " bScan " de la fonction "keybd_event", dans mon aide (TurboDelphi)
il est dit "This parameter is not used"

Extrait de l'aide de TurboDelphi

Windows NT/2000/XP:This function has been superseded. Use <mshelp:link tabindex ="0" xmlns:mshelp= "http://msdn.microsoft.com/mshelp" keywords="_win32_SendInput_cpp">SendInput</mshelp:link> instead.

Syntax

VOID keybd_event(      

    BYTE  bVk ,
    BYTE bScan,
    DWORD dwFlags,
    PTR dwExtraInfo
);

Parameters

* bVk : [in] Specifies a virtual-key code. The code must be a value in the range 1
to 254. For a complete list, see <mshelp:link tabindex =\"0\" xmlns:mshelp= \"http://msdn.microsoft.com/mshelp\" keywords=\"_win32_Virtual_Key_Codes_cpp\">Virtual-Key Codes</mshelp:link>.
* bScan : This parameter is not used. * dwFlags : <dd>[in] Specifies various aspects of function operation. This parameter can be
one or more of the following values.
<dl> * : KEYEVENTF_EXTENDEDKEYIf specified, the scan code was preceded by a prefix byte having the value
0xE0 (224).
* : KEYEVENTF_KEYUPIf specified, the key is being released. If not specified, the key is being
depressed.
</dd><dt> dwExtraInfo </dt><dd>[in] Specifies an additional value associated with the key stroke.
</dd></dl>Return Value

This function has no return value.

Et en plus ... j'ai le même exemple que celui qui est sur le lien que tu donnes

Et pour finir ... j'ai testé ceci et ça fonctionne :

keybd_event(VK_NUMLOCK, 0, 0, 0);
keybd_event(VK_NUMLOCK, 0, KEYEVENTF_KEYUP, 0);

Par contre, il est conseillé d'utiliser SendInput à la place mais ça ne change rien au "mystère" puisqu'il utilise le même type d'info en entré sous forme de tag.

C'est quand même un peut déroutant ce type de contradiction ... non
 
@+
Cirec

<hr size ="2" />
0
cs_rt15
Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
14
6 juin 2007 à 10:05
Salut,

L'aide de la msdn est un peu plus explicative sur le sujet.

(Vous avez peut être eu cette page plutôt).

En tout cas : should not use et quelques lignes plus loin, ils l'utilisent pour le printscreen... C'est pas limpide.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_rt15
Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
14
6 juin 2007 à 10:27
Apparement, le scan code, c'est plus hardware,et dépend du clavier, alors que le virtual key c'est plus ce qui est récupéré en soft, dans les messages WM_KEYDOWN par exemple. Et après le WM_KEYDOWN, c'est traduit en caractère...
0