SENDKEYS

Résolu
Signaler
Messages postés
1411
Date d'inscription
mercredi 6 août 2003
Statut
Membre
Dernière intervention
3 mars 2019
-
Messages postés
1411
Date d'inscription
mercredi 6 août 2003
Statut
Membre
Dernière intervention
3 mars 2019
-
Boujour voila j'ai fais un petit prog qui envoi des sendkeys

Voici un bout du code

For i = 0 to 200
SendKeys i
SendKeys "{ENTER 2}"
SendKeys "{BACKSPACE 3}"
Next i

Le problème est que si VERNUM est allumé, il n'envoi pas les nombres (i) mais les caractères qui se trouvent en dessous sur mon clavier.

Comment puis-je dire que si VERNUM est activé il faut le désactiver ?

Merci d'avance

Bonne prog
++

7 réponses

Messages postés
184
Date d'inscription
mercredi 8 décembre 2004
Statut
Membre
Dernière intervention
1 septembre 2010
1
Je pense que l'API suivant pourra t'aider :



Declare Function SetKeyboardState Lib "user32" (kbArray As KeyboardBytes) As Long

avec kbArray : Tableau de 256 octets

Il te permet d'établir l'état du clavier grâce à un tableau de 256 octets

Tu peux aller jeter un coupdd'oeil sur le site de DarK Sidious
www.ProgOtoP.com

Bonne continuation
@+


--------------------------------------------------------------------------------
Phantom_2005
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
27
Chez moi, cela fonction avec ou sans le verr. num !! Il envoie les chiffres à chaque fois !!


Christophe R
Messages postés
1411
Date d'inscription
mercredi 6 août 2003
Statut
Membre
Dernière intervention
3 mars 2019
1
Oups je voulais parler du cadna majuscule minuscule et non du clavier numérique

Bonne prog
++
Messages postés
1411
Date d'inscription
mercredi 6 août 2003
Statut
Membre
Dernière intervention
3 mars 2019
1
VER MAJ je suppose

Bonne prog
++
Messages postés
184
Date d'inscription
mercredi 8 décembre 2004
Statut
Membre
Dernière intervention
1 septembre 2010
1
Cet API te donne l'état des touches que tu veux:

Private Declare Function GetKeyboardState Lib "user32" (pbKeyState As Byte) As Long


' Enumération des touches que l'on peut être amené à tester
' (cette liste n'est pas exhaustive)
Public Enum eTouche
VK_NUMLOCK = &H90
VK_CAPITAL = &H14
VK_SCROLL = &H91
End Enum


Public Function ToucheActive(lgTouche As eTouche) As Boolean


Dim KeyboardBuffer(256) As Byte
Dim lgRep As Long


' Récupération de l'état de l'ensemble du clavier
lgRep = GetKeyboardState(KeyboardBuffer(0))
If KeyboardBuffer(lgTouche) Then
' La touche sélectionnée est activée
ToucheActive = True
Else
' La touche sélectionnée est inactive
ToucheActive = False
End If


End Function

Après tu peux t'en servir, pour tester l'état de Verr Maj

@+


--------------------------------------------------------------------------------
Phantom_2005
Messages postés
1411
Date d'inscription
mercredi 6 août 2003
Statut
Membre
Dernière intervention
3 mars 2019
1
Merci bien phantom_2005.
Connais-tu par hasard une API dans le même genre qui permet de modifier l'état de ces mêmes touches .

Bonne prog
++
Messages postés
1411
Date d'inscription
mercredi 6 août 2003
Statut
Membre
Dernière intervention
3 mars 2019
1
Merci bcp,
Je pense que je vais m'en sortir avec ça.

Bonne prog
++