Delphi结束指定进程...

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

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

 

///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');

posted @ 2012-08-24 20:29  氺〤魚Oo。  阅读(205)  评论(0编辑  收藏  举报