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

C++Builder Discussion :

Comment utiliser la fonction SendKeys() ?


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    508
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2008
    Messages : 508
    Par défaut Comment utiliser la fonction SendKeys() ?
    Bonjour,

    dans mon code je souhaiterai utiliser la fonction SendKeys() pour simuler l'appui des touches Ctrl-Z.

    J'ai noté la fonction comme ceci :
    mais j'ai l'erreur suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [BCC32 Erreur] USMS.cpp(206): E2268 Appel à une fonction non définie 'SendKeys'
    Que dois je inclure pour que mon programme reconnaisse cette fonction ?

    Merci d'avance, à bientôt !

  2. #2
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par défaut
    Je ne connais pas la fonction SendKeys, et BCB5 non plus apparemment.

    Pour simuler l'appui sur une touche, tu peux regarder du coté de keybd_event. Un petit exemple (à vérifier!!):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    //  Appuie sur la touche CTRL
      keybd_event(VK_CONTROL,0,0,0);  
    //  Appuie sur la touche Z
      keybd_event(0x59,0,0,0);   
    //  Relache la touche Z                  
      keybd_event(0x59,0,KEYEVENTF_KEYUP,0);
    //  Relache la touche CTRL 
      keybd_event(VK_CONTROL,0,KEYEVENTF_KEYUP,0);

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    508
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2008
    Messages : 508
    Par défaut
    Merci sat83, mais j'aimerai que le ctrl-Z soit envoyé sur le port usb !!!

    Et je ne sais pas comment m'y prendre !

  4. #4
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par défaut
    Hello!

    Et que fais exactement la fonction SendKeys, mis a part de simuler l'appui sur une touche du clavier?

    Parce que keybd_event permet justement de simuler l'appui (puis le relâchement) d'une touche du clavier, donc ca devrait marcher.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    508
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2008
    Messages : 508
    Par défaut
    oui c'est vrai, ces 2 fonctions semblent être similaires.

    Cependant, je voudrai simuler l'appui de ctrl-Z et l'envoyer sur le port usb.

    J'utilise la fonction WriteFile() pour l'envoi sur le port usb !!!

    Une idée ...

  6. #6
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2005
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 401
    Par défaut
    Hello,

    Ctrl+Z, c'est bien le caractère ASCII 26 ?

    C'est pas un truc de ce genre que tu veux faire ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    char chaine[2] = { 26, 0};
    WriteFile(..., chaine, 2, ..., ...);

Discussions similaires

  1. comment utiliser les fonctions d'une dll
    Par sebled dans le forum MFC
    Réponses: 3
    Dernier message: 24/02/2006, 16h59
  2. [Excel] Comment utiliser la fonction RECHERCHEV
    Par forsay1 dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 03/02/2006, 11h43
  3. Réponses: 3
    Dernier message: 31/12/2005, 23h09
  4. Comment utiliser la fonction NBR.JOURS.OUVRES?
    Par MEHCOOPER dans le forum Access
    Réponses: 9
    Dernier message: 20/10/2005, 12h50
  5. Réponses: 11
    Dernier message: 22/12/2003, 21h06

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