Wahnsinn und Verstand, beides auf einer Schwelle ^^. Ich hab bisschen in dem Windows
SDK rumgeschnuppert und bin endlich zu ner Einsicht gekommen.
Ich benutze nicht mehr ReadProcessMemory in Verbindung mit ERROR_ACCESS_DENIED um zu überprüfen, ob das Programm noch läuft sondern GetExitCodeProcess in Verbindung mit STILL_ACTIVE (259);
Also, wenn ReadProcessMemory mir ERROR_ACCESS_DENIED ausspuckt, überprüfe ich mit GetExitCodeProcess, ob er mir STILL_ACTIVE ausspuckt, ansonten wurde der Prozess terminiert und ich kann ihn aus meiner Überwachungsliste austragen.
Delphi-Quellcode:
function IsProcActive(hProc: Cardinal): Boolean;
var exCode: Integer;
begin
Result := False;
GetExitCodeProcess(hProc, exCode);
if exCode <> 259 then
Result := True;
end;
Trotzdem danke für die schnelle Hilfe Jungs ^^
MfG Angelo
"Wenn du nicht bereit bist, für eine Sache zu sterben, dann solltest du Freiheit aus deinem Vokabular streichen" - Malcolm X