Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
 
Delphi 12 Athens
 
#6

AW: Prüfen ob ein Prozess (noch) existiert

  Alt 21. Okt 2021, 16:46
Wozu suchen?

Es existiert bereits ein Handle, direkt zu dem Prozess.
jedenfalls bis dahin, wo es geschlossen wird. (CloseHandle)


Wie überall zu finden, kann man also auch direkt warten, mit einem WaitForSingleObject/WaitForMultipleObjects vor dem CloseHandle.
https://www.delphipraxis.net/133505-execandwait.html
https://www.delphipraxis.net/194595-...usfuehren.html
uvvvm.


Schließen muß man es aber garnicht (sofort), also statt der ID hebt man sich das Handle auf.

Und so lange kann man mit WaitForSingleObject/WaitForMultipleObjects warten (mit einem ganz kurzen Timeout kann man es auch nutzen, um zu gucken ob es noch läuft)
oder mit GetExitCodeProcess prüfen ob es schon beendet wurde (wenn nicht, dann liefert das ja ein False).


Am Ende natürlich nicht vergessen zu das Handle freizugeben.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat