Ich find da nur KillTask, und wenn ich diese function benütz wird explorer.exe sofort nach dem killen wieder geöffnet, so wie das windows immer macht wenn explorer.exe mal abkackt.
Doch wenn man ihn mit dem taskmanager schliest, bleibt er auch zu.
Edit:
hab jetzt diese function mal versucht:
Delphi-Quellcode:
function KillProcess(const ExeName: String): Boolean;
var
Prozess : TProcessEntry32;
h : THandle;
begin
Result := False;
Prozess.dwSize := SizeOf(Prozess);
h := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0);
try
If Process32First(h, Prozess) then
Repeat
If AnsiLowerCase(Prozess.szExeFile) = AnsiLowerCase(ExeName) then Result := TerminateProcess(OpenProcess(Process_Terminate, False, Prozess.th32ProcessID), 0);
Until (Not Process32Next(h, Prozess)) or Result;
finally
CloseHandle(h);
end;
end;
Doch wie gesagt, er öffnet sich nach dem beenden gleich wieder.
DOch dann hab ich in der linie
TerminateProcess(OpenProcess(Process_Terminate, False, Prozess.th32ProcessID), 0);
die 0 am ende zu einer 1 gemacht, jetzt gehts.
thx