C++ - Prüfen, ob Prozess läuft

Jo890

Mitglied
Hi,

Ich bin grade dabei, ein kleines Programm zu schreiben, welches aus mehreren verschiedenen kleinen Programmen besteht. Und da es ja mal passieren kann, das ein Programm abstürzt, will ich noch ein weiters Programm schreiben, welches durchgehend prüft, ob alle Programme laufen und falls sie nicht laufen neu startet.

Nun hab ich schon gegoogelt und so. Da kan was EnumProcesses(), da grieg ich die ID, aber bei mir sind das iwie nur einzelne Zahlen. Folglich funktioniert dann auch OpenProcess() nicht und dann die Funktion, um Infos über den Prozess zu griegen.

Gemacht hab ich das so:
Code:
DWORD aProzess[1024], anzahl;
EnumProcess(aProzess,sizeof(aProzess),&abzahl);

Da grieg ich aber keine IDs. Weißer einer wie das geht, oder ob ich das Prüfen überhaput mit den genannten Funktionen machen muss?

mfg Jo890
 
Hallo,

nach dem Aufruf von EnumProcesses stehen in aProzess die Prozess-IDs der laufenden Prozesse. Das ist genau das, was OpenProcess als dritten Parameter erwartet. Zeig uns deinen vollständigen (kopierten und nicht fehlerhaft abgetippten) Quellcode, dann können wir dir vielleicht helfen.

Grüße,
Matthias
 
Zurück