现在位置:主页>系统编程> 文章内容

DELPHI 杀进程源码

我要投稿更新日期:2008-07-02 点击:

function killjc(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 //如果返回值不为0
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)){返回进程名} =UpperCase(ExeFileName)){返回EXE名称不包含目录的}
 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;

//引用 Tlhelp32单元



所有评论

评论列表


我也评论来评论! 点击此处参与本文评论

注意:本站采用匿名评论,请各位网友注意自己的言行