Voici une fonction qui liste les processus ainsi que les fenêtres associées, permettant de retrouver aisément les fenêtres assorties à un processus (par liste de noms ou PIDs).
Code : Tout sélectionner
ProcessGetWin(Mode, "Processus;cherché", "Liste;Des;Fenêtres")
- Le paramètre de Mode permet de choisir le type de retour désiré : Par exemple, il est possible de récupérer dans un array 1-based toutes les fenêtres associées à tous les processus sauf ceux indiqués exactement en paramètre 2 (séparés par un point-virgule) en utilisant le mode 64+1024.
- Le paramètre sProcessGet est une chaîne de caractères supposée recevoir la liste des noms ou PIDs des processus à rechercher (suivant le mode black-liste, ils peuvent être ceux à ne pas retourner) séparés par un point-virgule. Notez qu'un point-virgule final ajoute une valeur "vide" supplémentaire.
- Le paramètre sListed est une chaîne de caractère supposée recevoir la liste des noms ou Handles des fenêtres à recherche (suivant le mode black-liste, etc) séparés par un point-virgule. La note ci-dessus s'applique ici aussi.
Utilisation :
Code : Tout sélectionner
#include <Array.au3>
Local $a = ProcessGetWin() ;Par défaut, tous les processus sont retournés assortis de toutes les fenêtres associées
_ArrayDisplay($a)
Qu'en pensez-vous ?
Il me semble que l'utilisation du Mode est tout de même bien complexe à prendre en main, auriez-vous des propositions pour simplifier cela ?
D.