已知一个应用程序的进程名(exe名字),如何杀死这个进程?(50分)

  • 主题发起人 主题发起人 oldseven
  • 开始时间 开始时间
O

oldseven

Unregistered / Unconfirmed
GUEST, unregistred user!
不要用获取window的方法。
 
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) <> 0do
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;


呵呵,捡50分.
注意在uses部分加上Tlhelp32单元
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2587881
看我的回答
 
不用这么麻烦,你听说过一个黑客程序吗?pskill.exe
你只要用shellexec来调用dos命令,然后杀了他就ok了,我以前做过,如果你知道远程的用户名密码,还可以远程查杀
 
多人接受答案了。
 
后退
顶部