Wie überprüfen ob ein Prozess NICHT läuft?
-
hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPALL,0); if(Process32First(hSnapshot,&pe32)) //hole ersten prozess { do { if(strmcp(pe32.szExeFile,"Test.exe") != 0) MessageBox ( NULL, "Meine Nachricht!", "Test!", MB_OK); } while(Process32Next(hSnapshot,&pe32)); //hole nächsten prozess }
Ich denke das Problem ist klar oder?
-
bool bProzessLaeuftNicht = true;
2. Replace "MessageBox..." durch "bProzessLaeuftNicht = false"
3. Am Ende fragst Du dann das "bProzessLaeuftNicht" ab...
-
Ja, das Problem ist klar. Dir ist das System hinter Variablen nicht bekannt.
hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPALL,0); BOOL running = false; if(Process32First(hSnapshot,&pe32)) //hole ersten prozess { do { if(strmcp(pe32.szExeFile,"Test.exe") != 0) { running = true; break; } } while(Process32Next(hSnapshot,&pe32)); //hole nächsten prozess } } if(running == FALSE) MessageBox ( NULL, "Meine Nachricht!", "Test!", MB_OK);
-
Das wäre bei meinem Code-Review in hohem bogen rausgeflogen
BOOL, false, true, FALSE... wenn das kein richtiges Durcheinander ist
Abergesehn davon, dass es den String CaseSensitiv vergleicht und keine COM-Server mit langen Dateinamen erkennen kann
-
a) Ich hab seinen Code kopiert
b) Ich wollte schnell seinKeine Sorge, mein Code ist immer sehr sehr aufgeräumt. So sieht das nicht aus.
MfG SideWinder
-
@SideWinder: Bei deinem Code erhalte ich keine MsgBox. Der Prozess läuft 100% nicht.
-
Ok hat sich erledigt.
Thread kann geschlossen werden!
-
SideWinder schrieb:
a) Ich hab seinen Code kopiert
Ja sorry... hab es ja gesehen, das es kopiert war... wollte trotzdem meinen Senf loswerden
-
welche Bibliotheken muss ich einbinden?
der schreibt andauernd Bezeichner nicht gefunden!
danke
mfg
-
Von was redest Du?
Am einfachsten ist es imme rnoch die Hilfe der jeweiligen Funktion anzuschauen... da steht dann i.d.R. unten welche lib benötigt wird.
-
ja danke, aber wie muss ich zb. pe32 deklarieren?
wie muss ich hSnapshot deklarieren?kann damit nicht viel anfangen:
error C2228: Links von ".szExeFile" muss sich eine Klasse/Struktur/Union befinden.
wenn ich ne struct draus mach, steht da sogar dass das illegal ist^
thx nochmal