Kill Process

0

Witam!!!
Moze i to sa podstawy, lecz nie wiem jak zabic process znajac sciezke do niego. Za wszystkie odp. dziekuje

0

w źródłach Delphi, programik Tasker, projekt SysDebug tam jest to piknie opisane + POSUKAJ NA FORUM, bo [b]TO już było wielokrotnie[/b]

0

function KillTask(ExeFileName: string): integer;
const
PROCESS_TERMINATE=$0001;
var
ContinueLoop: BOOL;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
result := 0;

FSnapshotHandle := CreateToolhelp32Snapshot
(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle,
FProcessEntry32);

while integer(ContinueLoop) 0 do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
UpperCase(ExeFileName))
or (UpperCase(FProcessEntry32.szExeFile) =
UpperCase(ExeFileName))) then
Result := Integer(TerminateProcess(OpenProcess(
PROCESS_TERMINATE, BOOL(0),
FProcessEntry32.th32ProcessID), 0));
ContinueLoop := Process32Next(FSnapshotHandle,
FProcessEntry32);
end;

CloseHandle(FSnapshotHandle);
end;

killtask(nazwa pliku bez scieznki);

btw no wresznie odpisalem na jakis post :P masz szczescie ; ]

//do szczescia brakuje znacznikow i :-)

0

Dzieki, ale ja tez cos znalazłem:

var
PHandle, FHandle: THandle;
Process:TProcessEntry32;
Done, Next: Boolean;
EXE : String; // ścieżka programu
begin
EXE := 'C:\Windows\Pulpit\prog.exe';
FHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
Process.dwSize := Sizeof(Process);
Next := Process32First(FHandle,Process);
while Next do
begin{ jesli sciezka dostepu sie zgadza }
if AnsiLowerCase(Process.szExeFile) = AnsiLowerCase(EXE) then
begin
PHandle:=OpenProcess(PROCESS_TERMINATE, False,
Process.th32ProcessID);
{ to probujemy zabic aplikacje }
Done := TerminateProcess(PHandle,0);
if not Done then
MessageBox(Handle, 'Błąd', 'Błąd', MB_OK);
end;
Next := Process32Next(FHandle,Process);
end;
CloseHandle(FHandle);
end;

0

Hehe.. to dziala tylko na w9x.. w w2k i wxp sa podawane tylko same nazwy plikow bez sciezki.. dlatego dla tych sysow lepiej uzyc funkcji psapi :P

1 użytkowników online, w tym zalogowanych: 0, gości: 1