Liste des fenetres des processus

cs_AlanG Messages postés 3 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 21 novembre 2005 - 19 nov. 2005 à 22:35
cs_AlanG Messages postés 3 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 21 novembre 2005 - 21 nov. 2005 à 22:06
bonjour,
Je cherche comment obtenir la liste des fenêtres de chaque process (en code managé si possible). Pour la liste des process pas de problème mais pour la liste des fenetres je n'ai pas trouvé. Seule la fenêtre principale est directement accessible à partir de l'ID du process.

Cordialement
Alan.G

6 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
19 nov. 2005 à 23:33
Salut,

Via les API, plus particulièrement avec EnumChildWindows.

/*
coq
MVP Visual C#
*/
0
cs_AlanG Messages postés 3 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 21 novembre 2005
20 nov. 2005 à 10:16
Merci tout d'abord pour ta réponse .

Cette fonction si j'ai bien compris renvoie les "fenetres filles". En fait je cherche les fenetres "top level".
Par exemple lorsqu'on lance notepad je cherche à obtenir le handle de la fenetre principale. Dans le cas de notepad il n'y a qu'une seule fenetre "top level". Pa contre lorsque l'on a une application comme par exemple le player video Zoomplayer ( Zplayer.exe) il y a 2 fenetres top level : une de classname TApplication et une de className TMainForm. Hors la fonction MainWindowHandle de la class process renvoie le handle de TApplication. Malheureusement ce handle ne correspond pas à la fenetre affichée qui est la TMainForm. Dou l'idée de récuperer la liste des fenetres "Top level" d'un process.

Dans la Win32 on pouvait utiliser la fonction EnumWindows pour obtenir toutes les top level puis on fait le tri pour trouver celles qui correspondent au process désiré.

Mais en code managé existe-t-il une solution ?

Bye
Alan.G
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
20 nov. 2005 à 10:19
Est-ce que l'utilisation de ce code pourrait t'aider ?
Il ne fait pas ce que tu veux a la base, mais il liste bien les fenetres

Mx
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
20 nov. 2005 à 10:19
Oups, j'avais pas lu ton dernier message

Mx
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
20 nov. 2005 à 11:13
A ma connaissance il n'y en a pas qui soit intégré au Framework
Donc il va falloir jouer avec les API :-)

/*
coq
MVP Visual C#
*/
0
cs_AlanG Messages postés 3 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 21 novembre 2005
21 nov. 2005 à 22:06
Bon et bien tant pis on va utiliser la Win 32
Merci beaucoup pour vos réponses

Bye
Alan.G
0
Rejoignez-nous