Windows 下杀死进程
1. 用命令行杀进程,前提是你知道进程 ID。用 Windows 任务管理器可以查看一个运行中的进程的进程 ID。用命令行命令 netstat -nao 可以查看当前联网的进程及其 ID
知道进程 ID 后,在命令行输入以下命令可以杀死这个进程:ntsd -c q -p "pid"
2. 杀死一个别的进程,前提是我们知道这个进程的主 Form 的标题(在 Delphi 来说就是主 Form.Caption):
procedure KillProgram(WindowTitle : string);
const
PROCESS_TERMINATE = $0001;
var
ProcessHandle : THandle;
ProcessID: Integer;
TheWindow : HWND;
begin
TheWindow := FindWindow(nil, PChar(WindowTitle)); //WindowTitle 是另外一个程序的主FORM.CAPTION
GetWindowThreadProcessID(TheWindow, @ProcessID);
ProcessHandle := OpenProcess(PROCESS_TERMINATE, FALSE, ProcessId);
TerminateProcess(ProcessHandle,4);
end;
3. 杀死自己(程序自杀):
procedure TForm1.Button1Click(Sender: TObject);
var
ProcID: DWord;
H, ProH: THandle;
begin
GetWindowThreadProcessId(Application.Handle, ProCID);
ProH := OpenProcess(PROCESS_ALL_ACCESS, True, ProcID);
TerminateProcess(ProH, 0);
end;
上述代码,把当前运行这个代码的程序自己杀死了。