hello,
Cette classe permet de récolter des informations sur les fenêtres Windows en activité (un peu comme Spy++). En particulier les Handles, Pid, noms de Classe et Titres des fenêtres Windows.
Le seul Membre de cette classe est un tableau (tabWinInfos) de structures winInfo :
Les deux méthodes de cette classe sont :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 WinInfo est une structure Hwnd est un entier système Pid est une chaîne Clas est une chaîne Titre est une chaîne FIN
1 - GetWinInfos(hparent est un entier système)
Récolte toutes les informations des fenêtres Windows dans le tableau tabWinInfos,
La recherche des fenêtres filles s'effectuant à partir de la fenêtre de handle hparent.
Si hparent vaut 0 on récolte toutes les fenêtres Windows.
2 - GetWinInfo(Parent est un entier système,ClassName,Titre,Pid)
Renvoie une structure winInfo de la première fenêtre Windows trouvée ayant les paramètres passés comme caractéristiques.
Si aucune fenêtre n'est trouvée une structure WinInfo avec comme valeur de classe "Pas trouvée" est renvoyée.
Si un des paramètres ClassName, Titre, Pid est Null il n'est pas utilisé pour la recherche.
Les paramètres ClassName, Titre, Pid peuvent n'être qu'une partie de ce qui est recherché.
La recherche des fenêtres filles s'effectuant à partir de la fenêtre de handle hparent.
Si hparent vaut 0 on cherche sur toutes les fenêtres Windows.
Exemple d'utilisation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 MonwinInfo est un ClWinInfos.WinInfo MaClasseWinInfo est une ClWinInfos // on recherche la fenêtre ayant un nom de classe contenant Notep MonwinInfo = MaClasseWinInfo.GetWinInfo(0,"Notep",Null,Null) Trace("Handle : " + MonwinInfo.Hwnd, " Pid : " + MonwinInfo.Pid, " Classe : " + MonwinInfo.Clas," Titre : " + MonwinInfo.Titre) Trace("=======================================================================") TableauSupprimeTout(MaClasseWinInfo.tabWinInfos) // on recherche toutes les fenêtres filles de la fenêtre de handle MonwinInfo.Hwnd MaClasseWinInfo.GetWinInfos( MonwinInfo.Hwnd) POUR TOUT MonwinInfo DE MaClasseWinInfo.tabWinInfos Trace("Handle : " + MonwinInfo.Hwnd, " Pid : " + MonwinInfo.Pid, " Classe : " + MonwinInfo.Clas," Titre : " + MonwinInfo.Titre) FIN
Résultat :
La classe de version 0.1 se trouve en pièce jointe. Elle est normalement utilisable à partir de windev 16. Elle possède une licence MIT :
Ami calmant, J.PLicence :
Copyright (c) 2020 Jurassic Pork
Licence Libre MIT
L’autorisation est accordée, gracieusement, à toute personne acquérant une copie
de ce logiciel et des fichiers de documentation associés (le « logiciel »), de commercialiser
le logiciel sans restriction, notamment les droits d’utiliser, de copier, de modifier,
de fusionner, de publier, de distribuer, de sous-licencier et / ou de vendre des copies du logiciel,
ainsi que d’autoriser les personnes auxquelles la logiciel est fournie à le faire,
sous réserve des conditions suivantes :
La déclaration de copyright ci-dessus et la présente autorisation doivent être incluses dans
toutes copies ou parties substantielles du logiciel.
LE LOGICIEL EST FOURNI « TEL QUEL », SANS GARANTIE D’AUCUNE SORTE, EXPLICITE OU IMPLICITE,
NOTAMMENT SANS GARANTIE DE QUALITÉ MARCHANDE, D’ADÉQUATION À UN USAGE PARTICULIER ET D’ABSENCE
DE CONTREFAÇON. EN AUCUN CAS, LES AUTEURS OU TITULAIRES DU DROIT D’AUTEUR NE SERONT RESPONSABLES
DE TOUT DOMMAGE, RÉCLAMATION OU AUTRE RESPONSABILITÉ, QUE CE SOIT DANS LE CADRE D’UN CONTRAT,
D’UN DÉLIT OU AUTRE, EN PROVENANCE DE, CONSÉCUTIF À OU EN RELATION AVEC LE LOGICIEL OU SON UTILISATION,
OU AVEC D’AUTRES ÉLÉMENTS DU LOGICIEL.
Partager