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

API, COM et SDKs Delphi Discussion :

Récupérer le Handle d'un bouton d'une application extérieur.


Sujet :

API, COM et SDKs Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut Récupérer le Handle d'un bouton d'une application extérieur.
    Bonjour,

    En lisant les posts qui font actuellement débat, j'ai eu envie d'essayer de cliquer sur un bouton d'une application extérieure.

    J'arrive à récupérer le Handle de l'application que je souhaite contrôler.
    Maintenant, ce que je cherche à faire, c'est trouver le Handle d'un bouton situé sur l'application extérieure et là, je ne sais pas comment m'y prendre...

    Une fois que j'aurai le Handle, il me suffira d'envoyer un Message ...

    Merci d'avance
    Cordialement

  2. #2
    Membre éclairé
    Homme Profil pro
    Freelance
    Inscrit en
    Décembre 2003
    Messages
    423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Freelance

    Informations forums :
    Inscription : Décembre 2003
    Messages : 423
    Par défaut
    Bonjour à toi,


    Je n'ai pas de code sous la main mais de mémoire comme ça tu peux utiliser les fonctions suivantes :
    FindWindow pour récupérer le Handle de ta fenêtre (mais apparemment ça c'est OK )
    GetWindow(handle_de_ta_fenetre,GW_CHILD) qui te permettra, si je ne m'abuse, de "naviguer dans ta fenetre". Ainsi en fait tu considère un peu chaque composant comme une fenêtre telle celle de ton application.

    Combiné avec la fonction GetClassName() pour savoir si tu as un TButton ou pas

    Bref ce n'est qu'une petite piste ayant déjà fait ceci récemment ... Je vais voir si je peux d'ailleurs retrouver le sujet

    Il y a certainement une autre façon

    Bonne chance


    [EDIT] voila le post que j'avais laissé :
    http://www.developpez.net/forums/sho...d.php?t=288287

  3. #3
    Membre éprouvé
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Par défaut
    Bonsoir,

    Salut, comme tu naviguais aussi dans le forum cousin C++Builder, je te redonne un lien que j'estime 'précieux' : un bout de code du très vénérable mais trop rare Djob

    Avec ca, ca devrait le faire ... tu devrais trouver de quoi faire ton bonheur.

    @ +

  4. #4
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Merci SunChaser

    Oui oui, je navigue sur les 2 plans, BCB and Delphi.

    Sacré tartine le code que tu m'as filé, je sans que je vais le désossé petit à petit et j'espère arrivé à tout saisir

    Bon, je commence ce soir? Humm peut être

  5. #5
    Membre éprouvé
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Par défaut
    Sinon, j'ai très agréablement 'triché' un peu pour des affaires similaires, c'est a dire qu'afin de repérer plus facilement les object 'parent' et leurs classes j'ai joué avec WindowSpy.
    Pratique et efficace ...
    Trouvé sur ce forum d'ailleurs (pour ma part ... de mémoire).
    (et d'ailleurs, je vais peut être dire une bêtise mais bon ... c'est pas codé ne Delphi ce truc ?)

    @ +

  6. #6
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Oua, ca fait 3/4h que je cherche et j'avance pas du tout !

    Je cherche comment on utilise la fonction EnumChildWindows() mais je comprends pas ...

    Car logiquement, on peut éviter de passer par la position de la souris et faire une batteries de tests en regardant le Handle et sa classe ....

    J'aimerai bien avoir juste un petit exemple afin que vous m'expliquiez comment ça fonctionne car niveau doc, y a pas grand chose en français.

    Merci

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

Discussions similaires

  1. Désactiver un bouton d'une application extérieure
    Par NABIL74 dans le forum Débuter
    Réponses: 20
    Dernier message: 11/02/2010, 16h31
  2. récupérer la valeur d'un bouton dans une pop up
    Par dragon93 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 27/07/2009, 17h21
  3. Réponses: 7
    Dernier message: 14/01/2008, 18h48
  4. Récupérer l'appuis d'1 bouton d'une boite de dialogue
    Par electrosat03 dans le forum Access
    Réponses: 7
    Dernier message: 20/02/2007, 21h19
  5. cliquer sur un bouton d'une application extérieure
    Par looc 6699 dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 12/12/2005, 17h46

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