Récupération de Handle [Résolu]

Signaler
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011
-
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011
-
Bonjour à tous,

J'ai un petit souci et j'espère que les plus habiles sauront me répondre car je suis un peu embêté là.
Voila, j'aimerais récupérer le handle d'un controle de Internet Explorer dans la zone HTML.
Par exemple, IE se connecte à google.fr et j'aimerais que mon logiciel puisse, par exemple, récupérer le handle du bouton intitulé "Recherche Google".

J'ai tenté d'utiliser des logiciels sur cppfrance faisant un listing des fenêtres et des sous fenêtres, pour voir, si je pouvais espérer trouver un handle par EnumWindows(), mais rien trouvé.
Je me suis dis alors, que cela devait venir du fait que la zone HTML constitue un controle ActiveX (d'ou le thème sous lequel je pose ce problème ).

Y a t-il un moyen de récuperer ce handle ?

Merci d'avance de vos réponses

Amcialement, Gendal67

12 réponses

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
SendInput te permet de simuler des actions de la souris (type = INPUT_MOUSE)

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
Ben est-ce-que ce bouton est en fait un vrai bouton lol :)
Est-ce-que c'est possible que ce soit juste un dessin avec une action...

Donc le truc c'est de savoir si ce bouton est considéré comme un contrôle à part entière, où si c'est juste un élément d'une page web...

ULARGE_INTEGERJokyQi=QI("Joky"
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

Quasiment sûr que ce sont de vrais boutons, le tout géré par l'ActiveX. Car il est certain que la zone HTML en soit un (cf. source création navigateur avec moteur IE), je pense que cela a été codé proprement et que ce sont de vrais boutons.
Maintenant je vois mal comment récupérer le handle de ceux-ci internes à l'ActiveX

Quelqu'un a une idée ?
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Je crois que Joky a vu juste. Si on regarde avec Spy++, aucun controle dans une fenêtre internet explorer, juste une grande fenêtre de classe "Internet Explorer_Server"

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

Hmmmm....et ce ne serait pas possible qu'elle apparaisse autre part que dans la liste de fenêtres du processus iexplore ? On est bien d'accord que c'est l'ActiveX qui crée et gère ces contrôles. Alors il n'y a pas de raison pour qu'ils appartiennent nécessairement à IE.
Mon raisonnement est-il erroné ?
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Spy++ permet aussi de trouver un fenêtre par rapport à sa position, et je peux te dire qu'il n'y a pas de HWND à un emplacement ou on voir une zone de texte
Essaie avec ça, tu verras par toi même

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

Non non mais je te crois, je demandais juste. Eh bah soit, c'est un dessin avec action! Mais comment je peux faire alors pour par exemple simuler un clic sur un bouton dans une page HTML sans réellement physiquement cliquer ?
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

Euh je veux dire sur ce dessin, pas sur ce bouton.
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
C'est quand même un bouton, même s'il n'est pas créé avec CreateWindow
Pour simuler le clic, je pense que ca va être compliqué. Il faudrait que IE soit au premier plan, et qu'on connaisse la position du bouton

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

C'est la misère là. Le but de mon programme serait de pouvoir simuler les actions utilisateurs sous IE afin de les automatisées. Est-ce que si la fenêtre d'IE est au premier plan mais invisible, et qu'on connait les coordonnées d'un point appartenant au bouton concerné, ça peut marcher ?
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

Sinon, en admettant que les conditions soient remplies, quelle serait ton idée pour simuler ce clic ?
Messages postés
627
Date d'inscription
mercredi 16 juin 2004
Statut
Membre
Dernière intervention
24 juillet 2011

Merci à toi pour toutes cs réponses et à Joky pour avoir essayé de m'aider. Je vais tenter du coté de cet API.
Encore merci