uses
Tlhelp32; 
//在工程中引入单元Tlhelp32

//使用函数前,请在工程的前面对函数进行声明,截图如下

Delphi结束指定进程..._delphi

 

///Delphi结束指定进程函数
function TForm1.EndProcess(ExeFileName:string):integer;
const
PROCESS_TERMINATE = $0001;
var
ContinueLoop: BOOLean;
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;
//

//调用方式
if  KillTask('qq.exe') <> 0 then
  showmessage('结束QQ成功')
else
  showmessage('无法结束QQ');