Windows 下用 Delphi 代码杀死进程,或者杀死自己

来源:互联网 发布:成都金沙房价 知乎 编辑:程序博客网 时间:2024/05/22 13:26

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;

上述代码,把当前运行这个代码的程序自己杀死了。

原创粉丝点击