Registriert seit: 20. Nov 2008
4 Beiträge
|
Re: Prozesse wie bekomme ich raus ob ein Prozess läuft
7. Jan 2009, 13:24
Hallo,
hier zwei Möglichkeiten nen Prozess zu beenden:
1:
Delphi-Quellcode:
function KillTask(const AExeName: string): boolean;
var
p: TProcessEntry32;
h: THandle;
begin
Result := false;
p.dwSize := SizeOf(p);
h := CreateToolHelp32Snapshot(TH32CS_SnapProcess, 0);
try
if Process32First(h, p) then
repeat
if AnsiLowerCase(p.szExeFile) = AnsiLowerCase(AExeName) then
Result := TerminateProcess(OpenProcess(Process_Terminate,
false,
p.th32ProcessID),
0);
until (not Process32Next(h, p)) or Result;
finally
CloseHandle(h);
end;
end;
2:
Delphi-Quellcode:
Function KillProcess(PID: Integer): Boolean;
//Funktion, stark modifiziert, kopiert von Michael Puff's Sysinfo
//war zu faul die selbst nachzuschlagen ;)
var
hProcess : Cardinal;
begin
{ open the process and store the process-handle }
hProcess:= OpenProcess(PROCESS_ALL_ACCESS, False, PID);
if(hProcess<>0) then
{ kill it }
if(TerminateProcess(hProcess,0)) then result:=true else result:=false
else
Result:=false;
closehandle(hProcess);
end;
|
|
Zitat
|