Mettre ou enlever capslock par prog [Résolu]

Signaler
Messages postés
448
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
26 juillet 2012
-
Messages postés
448
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
26 juillet 2012
-
bonjour,
j'avais posté un message pour savoir comment forcer capslock a on par programmation
mais je le trouve plus !!
maintenant je veux pouvoir enlever capslock
lol
lorsque le programme fini de s'executer donc g refait la meme chose qu'au depart (pour le mettre puisqu'ne fait ma procedure simule l'appui sur la touche apparemment       

    if (Console.CapsLock)
            {
                MessageBox.Show("caps on");
                System.UIntPtr ptr = new UIntPtr(0);
                byte VK_CAPITAL = 0x14;
                keybd_event(VK_CAPITAL,
             0x45,
             KEYEVENTF_EXTENDEDKEY | 0,
             ptr);)

j'ai bien cap son qui s'affiche mais le clavier ne repasse pas en minuscule

coment faire ? comment retrouver tous les messages avec cpaslock (g cherché capslock et ca na pas donné grd chose)

merci bien

7 réponses

Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
17
essaie tout simplement


keybd_event(VK_CAPITAL,0x45,KEYEVENTF_EXTENDEDKEY ,ptr);
keybd_event(VK_CAPITAL,0x45,KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,ptr);

a la fois pour activer ET pour désactiver. ca devrait simuler un appui sur la touche caps lock de manière correcte
Messages postés
1160
Date d'inscription
vendredi 23 juillet 2004
Statut
Membre
Dernière intervention
21 octobre 2010
17
KEYEVENTF_EXTENDEDKEY | 0
pourquoi le |0 puisque ca va te rendre KEYEVENTF_EXTENDEDKEY ?

sinon en utilisant KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP au lieu de simplement KEYEVENTF_EXTENDEDKEY pour la désactivation, ca devrait marcher
Messages postés
448
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
26 juillet 2012
1
j'ai ces valeurs la :






private



const



int
KEYEVENTF_EXTENDEDKEY = 0x1;


private



const



int
KEYEVENTF_KEYUP = 0x2;

j'ai essayé mais ca marche tjrs pas
autre chose de "bizarre" apres avoir forcé le capslock a on, je dois appuyer 2 fois manuellement sur capslock pour remettre le clavier en minuscule (g donc essayer de mettre le code 2 fois)

quand je fais:

keybd_event(VK_CAPITAL,

0x45,

KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,

ptr);

keybd_event(VK_CAPITAL,

0x45,

KEYEVENTF_EXTENDEDKEY ,

ptr);

 

ca marche mais je sais pas trop la raison, je ne maitrise pas ces trucs et cela m'ennuei un peu
Messages postés
448
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
26 juillet 2012
1
en fait apres qques tests, je m'apercois que



keybd_event(VK_CAPITAL,0x45,KEYEVENTF_EXTENDEDKEY,ptr);

"force tellemnt" le caps lock a on ou off qu'il fo appuyer 2 fois (manuellement) pour le modifier ensuite

lorsque je quitte le programme je fais donc:


keybd_event(VK_CAPITAL,


0x45,


KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,


ptr);


keybd_event(VK_CAPITAL,


0x45,


KEYEVENTF_EXTENDEDKEY,


ptr);


keybd_event(VK_CAPITAL,


0x45,


KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,


ptr);

maintenant quand j'appuie sur capslock c bon ca fonctionne comme normalement

par contre je sais tjrs pas pkoi et ou est passé le post sur ce sujet
Messages postés
448
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
26 juillet 2012
1
tout simplement ! lol
ok ca revient a peu pres a la meme chose que g faite
mais j'aimerais comprendre pkoi c comme ca
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
36
Salut, je pense que tu parles de ces 2 sujets :

http://www.csharpfr.com/infomsg_CAPSLOCK_801533.aspx



http://www.csharpfr.com/infomsg_FORCER-CAPSLOCK_765551.aspx



Sachant que dans ces exemples j'utilise SendInput qui est juste la version améliorée de keydb_event.
Messages postés
448
Date d'inscription
mardi 20 septembre 2005
Statut
Membre
Dernière intervention
26 juillet 2012
1
ben oui c ca mais kan je met "forcer capslock" ou juste "capslock" je tombe pas la dessus et c toujours limité a  2 pages
en fait par exemple quand je tape capslock g un seul post avec le nom du gars qui s'apelle capslock


en gros g du mal a lire les posts et c pour ca ke je pose peut etre des questions deja presentes