Bonjour! Voilà, je tente de faire une mini appli en mode console qui récupère la liste de toutes les fenêtres déjà ouvertes sur le bureau, et je ne sais pas trop comment m'y prendre...
J'ai bricolé un bout de code qui me donne le nom d'une nouvelle fenêtre qui s'ouvre, mais je ne crois pas que je sois sur la bonne voie!
Ce code fonctionne bien, mais après réflexion je ne pense pas que scruter des évènements soit la bonne solution, car les fenêtres sont déjà ouvertes!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 class Program { static void Main(string[] args) { Automation.AddAutomationEventHandler( eventId: WindowPattern.WindowOpenedEvent, element: AutomationElement.RootElement, scope: TreeScope.Children, eventHandler: OnWindowsOpened); Console.ReadLine(); Automation.RemoveAllEventHandlers(); } private static void OnWindowsOpened(object sender, AutomationEventArgs automationEventArgs) { try { var element = sender as AutomationElement; if (element != null) Console.WriteLine("Nouvelle Fenêtre ouverte : {0}", element.Current.Name); } catch (ElementNotAvailableException) { } } }
Si vous avez des suggestions, ce serait cool! Merci d'avance...
Partager