SENDKEYS

Résolu
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 - 10 janv. 2005 à 17:38
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 - 12 janv. 2005 à 14:13
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

phantom_2005 Messages postés 184 Date d'inscription mercredi 8 décembre 2004 Statut Membre Dernière intervention 1 septembre 2010 1
12 janv. 2005 à 12:59
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
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 29
10 janv. 2005 à 18:01
Chez moi, cela fonction avec ou sans le verr. num !! Il envoie les chiffres à chaque fois !!


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

Bonne prog
++
0
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
10 janv. 2005 à 18:58
VER MAJ je suppose

Bonne prog
++
0

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

Posez votre question
phantom_2005 Messages postés 184 Date d'inscription mercredi 8 décembre 2004 Statut Membre Dernière intervention 1 septembre 2010 1
11 janv. 2005 à 09:08
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
0
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
12 janv. 2005 à 12:45
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
++
0
bouv Messages postés 1411 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 3 mars 2019 1
12 janv. 2005 à 14:13
Merci bcp,
Je pense que je vais m'en sortir avec ça.

Bonne prog
++
0