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 :

API > simulation appuie et maintien d'une touche clavier


Sujet :

Windows

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 70
    Points : 66
    Points
    66
    Par défaut API > simulation appuie et maintien d'une touche clavier
    bonjour,

    But: simuler l'appuie d'une touche (Shift, ALT, F10, ESC ) permettant de passer en émission dans un tchat comme TeamSpeack, Ventrilo ou autre logiciel équivalent (tchat vocal).

    je cherche une api Windows permettant de simuler l'appuie et le maintiens de l'appuie d'une touche.

    j'ai bien chercher et essayer la solution en utilisant la fonction keybd_event de l'API user.dll

    j'arrive à simuler l'appuie sur la touche SHIFT pour passer du minuscule à Majuscule.. mais ca n'active pas
    (Example en VB .net)
    Call keybd_event(&HA0, 0, 0, 0) ' Shift gauche Appuyé
    Call keybd_event(&H54, 0, 0, 0)
    Call keybd_event(&HA0, 0, 2, 0) ' Shift gauche desactive


    mais ça n'active pas l'emission sur le tchat vocal. Donc je cherche une autre solution.

    Merci

    Thierry

  2. #2
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Call keybd_event(&HA0, 0, 0, 0) ' Shift gauche Appuyé
    Call keybd_event(&H54, 0, 0, 0)
    Call keybd_event(&H54, 0, 2, 0)
    Call keybd_event(&HA0, 0, 2, 0) ' Shift gauche desactive

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 70
    Points : 66
    Points
    66
    Par défaut
    Bonjour,

    j'ai de nouveau testé avec la fonction "keybd_event" sans succes.
    les logiciels telle que Teamspeak ne detecte pas cette simulation de maintien de touche (ici Shift, mais aussi F10 etc..)

    je cherche donc une autre solution ou piste viable, utilisant une DLL de Microsoft (natif) ou autre DLL ...

    Merci

    Thierry

  4. #4
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Ah oui ça me rappelle plein de limitations de keybd_event, mais MS n'a jamais donné beaucoup de précisions à ce sujet, à part qu'il faut désormais toujours utiliser SendInput au lieu de keybd_event. Je ne sais pas si ton problème là provient d'une de ces limitations.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    70
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 70
    Points : 66
    Points
    66
    Par défaut
    POST cloturé.

    En fait il faut renseigner le Scan code de la touche clavier.. et la par merveille, ca fonctionne.


    ' Key Pressed
    keybd_event(VirtualCode, ScanCode, 0 + ExtedScanCode, 0)

    ' Key Unpressed
    keybd_event(VirtualCode, ScanCode, 2 + ExtedScanCode, 0)


    Avec pour SHIFT Gauche:
    VirtualCode = &H10
    ScanCode = &H2A
    ExtedScanCode = 0

    &H étant la notation hexadécimal en VB .NET


    Merci Melen pour tes réponses.

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

Discussions similaires

  1. [XL-2003] Simuler le MAINTIEN d'une touche
    Par diam's dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 04/03/2011, 08h53
  2. Réponses: 11
    Dernier message: 30/09/2008, 20h52
  3. Simuler une touche clavier
    Par micky13 dans le forum Langage
    Réponses: 9
    Dernier message: 17/04/2006, 20h08
  4. Simuler un e pression sur une touche du clavier
    Par Furius dans le forum VBScript
    Réponses: 13
    Dernier message: 11/12/2005, 17h53
  5. [Applet]simuler une touche clavier
    Par mat10000 dans le forum Interfaces Graphiques en Java
    Réponses: 19
    Dernier message: 12/12/2003, 16h23

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