Einzelnen Beitrag anzeigen

TStringlist

Registriert seit: 1. Dez 2003
360 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Auf beenden eines Programms reagieren

  Alt 20. Jan 2007, 16:11
@XXcD

Nein, den Taskmanager kann man eigentlich nicht durch ein eigenes Programm dementsprechend befragen (wenigstens nicht das ich wüßte).

Übrigens habe ich oben ein winziges bisschen Unsinn erzählt *ggg*: Die Handle des jeweils zu überwachenden Progs musst Du natürlich für diese Prüfung nicht kennen. Vielmehr wirst Du sie im positiven Fall (dh. wenn das Programm noch läuft) dann von dieser FindWindow-Funktion geliefert bekommen! Bekommst Du stattdessen nur eine 0 (Null) geliefert, dann läuft das Programm eben nicht mehr.

Um diese FindWindow-Funktion nutzen zu können, musst Du dann aber zuerst noch den KlassenNamen und/oder den WindowNamen des jeweiligen Programmes wissen. Letzteres steht für gewöhnlich schon in der Title-Leiste des Windows und für den ClassName sollte man sich am Besten so ein Programm wie SPY++ zulegen. Das ist kostenlos und kann z.B. hier gedownloaded werden.

Wenn Du diese Informationen hast (ClassName und/oder WindowName), dann brauchst Du eigentlich nur noch mehr einen Timer und eine einzige weitere Anweisung, um die von dir gewünschte Information abfragen zu können:

If FindWindow('theWindowClassName','theWindowName') <> 0 then WindowStillExists...
MfG (& Thx ggf.)
  Mit Zitat antworten Zitat