Entwickler-Ecke

Sonstiges (Delphi) - Alle anderen Fenster schließen


221091199436 - Mo 11.01.10 20:10
Titel: Alle anderen Fenster schließen
Hallo,
wahrscheinlich wird es Beschwerden hageln, dass ich hätte suchen sollen, aber ich habe wirklich nichts gefunden was komplett passt und so wie ichs gerne hätte bekomme ich es nicht hin. Ich bin auf der Suche nach einer Möglichkeit alle anderen Programme und Prozesse außer meinem eigenen zu beenden, ohne dass sich mein Programm dabei zerschießt oder irgendetwas was für Windows wichtig ist geschlossen wird.
Ein Fenster zu schließen dürfte ja kein Problem sein, alle zu schließen kriege ich vlt. auch noch hin, aber wie erreiche ich es das nur alle unwichtigen(s.o.) geschlossen werden?
Vielen Dank ;)


jaenicke - Mo 11.01.10 20:40

Mit EnumWindows [http://msdn.microsoft.com/en-us/library/ms633497.aspx] alle Fenster durchgehen und mit IsWindowVisible [http://msdn.microsoft.com/en-us/library/ms633530.aspx] feststellen welche davon gerade angezeigt werden. Dabei musst du natürlich noch die Sachen wie den Desktop und so filtern, denn die sollte man natürlich nicht schließen. Dann kannst du die betreffenden Fenster schließen.

Allerdings würde ein solches Tool in Nullkommanix wieder von meinem Rechner fliegen und als Virus gemeldet werden, wenn es sich um ein normal veröffentlichtes Tool handelt und nicht nur für dich ist oder so...


ub60 - Mo 11.01.10 20:40

Machst Du eigentlich nur solche oder ähnliche (http://www.delphi-forum.de/viewtopic.php?t=97051) Skript-Kiddie-Themen auf? Warum sollte man alle Fenster schließen (wenn der User es nicht will, nehme ich mal an)?

ub60


jaenicke - Mo 11.01.10 20:44

user profile iconub60 hat folgendes geschrieben Zum zitierten Posting springen:
... Skript-Kiddie-Themen auf? Warum sollte man alle Fenster schließen (wenn der User es nicht will, nehme ich mal an)?
Genau deshalb hüte ich mich auch hier direkte Copy&Paste Lösungen oder Quelltext zu posten. :mrgreen:


221091199436 - Mo 11.01.10 20:49

user profile iconub60 hat folgendes geschrieben Zum zitierten Posting springen:
Machst Du eigentlich nur solche oder ähnliche (http://www.delphi-forum.de/viewtopic.php?t=97051) Skript-Kiddie-Themen auf? Warum sollte man alle Fenster schließen (wenn der User es nicht will, nehme ich mal an)?

ub60


Die beiden haben nichts miteinander zu tun. Ich möchte versuchen ein Programm zu schreiben, mit dem ich alle anderen schließen kann, sodass das Programm ohne Probleme irgendetwas verändern kann... das isn ganz allgemeines Problem was mir öfters über den Weg läuft und das dann auch etwas erledigen könnte um das man ja öfter gebeten wird (schließen sie alle geöffneten Anwendungen und so).
und... keine Angst... hätte ich böses im Sinn, dann würde ich bestimmt nicht hier öffentlich fragen, für soclhe Sachen habe ich sowieso zu wenig Ahnung... ich hab einfach nur angefangen für die Schule zu lernen und irgendwie gefallen daran gefunden für mich sinnvolle Programme zu schreiben und so...

... da wär auch delphi nich das richtige für :D


Marc. - Mo 11.01.10 20:52

user profile icon221091199436 hat folgendes geschrieben Zum zitierten Posting springen:
Ich möchte versuchen ein Programm zu schreiben, mit dem ich alle anderen schließen kann, sodass das Programm ohne Probleme irgendetwas verändern kann... das isn ganz allgemeines Problem was mir öfters über den Weg läuft und das dann auch etwas erledigen könnte um das man ja öfter gebeten wird (schließen sie alle geöffneten Anwendungen und so).


Beispielfall? Vielleicht lässt sich Dein Problem auch anders lösen ohne etwas schließen zu müssen. ;)


221091199436 - Mo 11.01.10 20:53

user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Mit EnumWindows [http://msdn.microsoft.com/en-us/library/ms633497.aspx] alle Fenster durchgehen und mit IsWindowVisible [http://msdn.microsoft.com/en-us/library/ms633530.aspx] feststellen welche davon gerade angezeigt werden.


Gibt es da nicht einen einfacheren Befehl der für alle Fenster ein Close durchführt, außer die,die das verbieten?
Ich würde ja mal annehmen, das die für Windows wirklich wichtigen Befehle sich nicht einfach so schließen lassen und das eigene kann man ja mit canclose auch erhalten... oder tappe ich Ahnungsloser völlig im Dunkeln


elundril - Mo 11.01.10 20:56

wie soll ein Programm das verbieten? wäre ja schwachsinnig, denn dann kann dieses Programm nicht beendet werden. Wenn dann musst schon DU sagen welche du nicht abschießen willst.

lg elundril