IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

Simuler saisie clavier SendMessage et WM_KEYDOWN


Sujet :

Windows

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 61
    Points : 24
    Points
    24
    Par défaut Simuler saisie clavier SendMessage et WM_KEYDOWN
    Je voudrais simuler une saisie clavier (par exemple la lettre 'n') sur une fenetre dont jai le handle (on peut supposer quel ne soit pas active)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    VK_N = &H6E
    lsuccess = SendMessage(hWnd,WM_KEYDOWN,VK_N,0)
    je sais qu'il existe Keybd_event() mais je n'en veux pas etant donne qu'il ne marche qu'avec la fenetre active...je veux envoyer le message a la fenetre de mon choix, active ou pas...

    Qqun saurait pqoi mon code ne marche pas?
    Merci

  2. #2
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 670
    Points
    10 670
    Billets dans le blog
    3
    Par défaut
    Faut envoyer le KEYUP aussi. Faudrait aussi générer un lParam correct (dernier paramètre).

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 61
    Points : 24
    Points
    24
    Par défaut
    pour ce qui est du lparm j'ai regarde la doc sur msdn, et le 0 convient il me semble.
    maintenant, qu'entends tu par le keyup?

    en fait je tente de manipuler une fenetre d'un programme, je simule les saisies clavier pour se deplacer dans les menus par exemple

  4. #4
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 670
    Points
    10 670
    Billets dans le blog
    3
    Par défaut
    WM_KEYUP. Après avoir appuyé sur la touche, faut la relâcher. Dans lParam y'a le nombre de répétitions, qui est à zéro chez toi.

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 61
    Points : 24
    Points
    24
    Par défaut
    oui mais j'ai rien a faire quand la touche est relachee...
    de plus g 0 repetitions, ce qui signifie que j'envoi qu'une seule fois le caractere

  6. #6
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 670
    Points
    10 670
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par VoLc0m
    oui mais j'ai rien a faire quand la touche est relachee...
    toi peut être, mais l'appli visiblement non. En fait c'est TranslateMessage qui fait le boulot et se charge de convertir en WM_CHAR. Et lui ben il veut le KEYUP.
    Enfin tu fais comme tu veux, tu demandes de l'aide je te propose une piste qui prend 5 secondes à explorer. Si t'es pas content débrouille toi seul

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 61
    Points : 24
    Points
    24
    Par défaut
    mais j ai pas di ke jen ai rien a faire, faut pas tenerver lol.
    mais que veux tu que jenvois avec le keyup?

    je viens de reussir avec le keybd_event() mais bon c'est pas interessant si la fenetre est pas active...

  8. #8
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 670
    Points
    10 670
    Billets dans le blog
    3
    Par défaut
    Tu envois la même chose.
    Sinon un ch'ti SetForegroundWindow avant le keybd_event et ça devrait être bon; car à vrai dire je suis pas sûr de ce que ça donne tout ça avec qu'une fenêtre qui n'a pas le focus.

  9. #9
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 61
    Points : 24
    Points
    24
    Par défaut
    a ma grande surprise, je viens de recommencer, juste le KEYDOWN, mais avec PostMessage() et cela marche...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. appli NFC qui simule saisie clavier
    Par manbar dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 17/04/2014, 16h10
  2. simuler une saisie clavier
    Par salseropom dans le forum C++
    Réponses: 5
    Dernier message: 24/01/2012, 15h08
  3. Simulation de saisie clavier
    Par Tifou92 dans le forum C
    Réponses: 5
    Dernier message: 01/07/2010, 08h29
  4. [visual c++ 6] Simuler la saisie clavier d'une phrase complète
    Par polnioumane dans le forum Visual C++
    Réponses: 4
    Dernier message: 21/07/2008, 11h04
  5. Saisie clavier marche pas
    Par Dokho1000 dans le forum Entrée/Sortie
    Réponses: 8
    Dernier message: 11/03/2004, 12h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo