Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.02;
Скачать: CL | DM;

Вниз

убиение процесса по имени ехе   Найти похожие ветки 

 
ga3 ©   (2002-12-21 06:08) [0]

мастаки, я давно еще видел на форуме такую функцию, но щас ее нигде найти не могу почемуто:-((
подскажите плиз, замучился нафиг


 
mukha ©   (2002-12-21 06:29) [1]

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

H := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
FP32.dwSize := Sizeof(FP32);
ContinueLoop := Process32First(H,FP32);

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

CloseHandle(H);
end;

Использование KillTask("Winword.exe")


 
mukha ©   (2002-12-21 07:01) [2]

Извиняюсь, исправлено

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;



Страницы: 1 вся ветка

Текущий архив: 2003.01.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.033 c
6-1849
ppcat
2002-11-05 13:25
2003.01.02
Как получить список пользователей?


3-1745
EvgeniyM
2002-12-11 11:32
2003.01.02
Help! Delphi+DOA+Oracle, запрос по нескольким таблицам.


14-1917
stone
2002-12-15 14:29
2003.01.02
Из корпоративной переписки (продолжение)


1-1778
arnold
2002-12-20 10:39
2003.01.02
Обмен между программами


6-1850
Beginer1
2002-11-01 20:48
2003.01.02
когда