如何結束另一個程式的進程?

來源:互聯網
上載者:User
如何結束另一個程式的進程? Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiAPI/html/delphi_20061116114828220.html
請問如何用Delphi程式結束另一個程式的進程?(請注意:是結束進程,而不僅僅是關閉程式)

SEND一個WM_CLOSE或WM_DESTROY訊息到此進程去  
  或者用TerminateProcess結束進程

有具體的函數調用形式嗎?或者請給一個執行個體,謝謝!

TerminateProcess(ProcessID,ExitCode);  
  ProcessID是進程ID,ExitCode是退出碼;

TerminateProcess  
   
  傳回值    
  Long,非零表示成功,零表示失敗。    
   
  參數表    
  參數   類型及說明    
  hProcess   Long,指定要中斷的一個進程的控制代碼(相當於進程的PID)  
  uExitCode   Long,進程的一個結束代碼    
 

用TerminateProcess就可以了.

uses   Tlhelp32;  
   
  Function   KillProcess(List:Array   Of   String):Boolean;   Stdcall;  
  Var  
      s:String;  
      I,   Fs,   hKill:Integer;  
      FP:TProcessEntry32;  
  Begin  
      Result   :=   False;  
      Fs   :=   CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,   0);  
      FP.DwSize   :=   SizeOf(FP);  
      If   Process32First(Fs,   FP)   Then  
          Repeat  
              s   :=   UpperCase(Trim(FP.szExeFile));  
              For   I   :=   Low(List)To   High(List)   Do  
                  If   s=UpperCase(Trim(List[I]))   Then   Begin  
                      hKill   :=   OpenProcess(PROCESS_TERMINATE,   False,   FP.th32ProcessID);  
                      TerminateProcess(hKill,   0);//強制關閉進程  
                      CloseHandle(hKill);  
                      Result   :=   True;  
                  End;  
          Until   Not(Process32Next(Fs,   FP));  
  End;  
   
  KillProcess(['aaa.exe','bbb.exe']);  
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.