Registriert seit: 11. Jan 2007
10 Beiträge
|
Alle Fenster in der Taskleiste finden
11. Jan 2007, 04:25
Zu aller erst musss ich sagen ich programmiere in C#, Java und Visual Basic. Ich habe mich hier angemeldet weil hier viele kluge Leute sind und ich Delphi während der Schulzeit gelernt habe.
Mein Problem ist folgendes. Ich will alle Fenster die in der Taskleiste sichtbar sind ausfindig machen.
Bisher habe ich unter der Benutzung von EnumWindows alle Fenster aufgelistet und dann mit IsWindowVisible überprüft ob sie sichtbar sind. Als nächstes überprüfe ich ob der Klientbereich größer null ist. Sofort danach überprüfe ich ob das Flag WS_EX_APPWINDOW gesetzt ist, falls ja wird das Fenster übernommen. Alle Fenster bei denen das Flag WS_EX_TOOLWINDOW gesetzt ist werden aussortiert.
Leider werden immer noch Fenster gefunden die nicht in der Taskleiste sichtbar sind. Zum Teil ist das die Taskleiste selber die ich übrigens manuell aussortiere. Auch das Program Manager Fenster welches scheinbar vom Explorer.exe geöffnet wird, sortiere ich aus.
Es gibt aber leider, so komisch das auch klingt, noch Fenster die zwar sichtbar sind aber nicht in der Taskleiste angezeigt werden und ich weis nicht mit welchen Trick diese Fenster sich vor der Taskleiste verstecken.
Weis jemand wie ich nun diese Fenster, die sichtbar sind aber nicht in der Taskleiste angezeigt werden, ausfindig mache. Dazu gehört z.B. auch Miranda wenn es entsprechend konfiguriert ist.
|