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

@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 SendInput 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 Virtual-Key Codes.
- bScan
- This parameter is not used.
- dwFlags
- [in] Specifies various aspects of function operation. This parameter can be one or more of the following values.
- KEYEVENTF_EXTENDEDKEY
- If specified, the scan code was preceded by a prefix byte having the value 0xE0 (224).
- KEYEVENTF_KEYUP
- If specified, the key is being released. If not specified, the key is being depressed.
- dwExtraInfo
- [in] Specifies an additional value associated with the key stroke.
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