Check, if a process is running

简介:
{ Check if a process from the task list is active. }  

uses  TlHelp32; 


function  processExists(exeFileName: string): Boolean; 
var  
  ContinueLoop: BOOL; 
  FSnapshotHandle: THandle; 
  FProcessEntry32: TProcessEntry32; 
begin  
  FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); 
  FProcessEntry32.dwSize := SizeOf(FProcessEntry32); 
  ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32); 
  Result := False; 
   while  Integer(ContinueLoop) <> 0 do 
   begin  
     if  ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = 
      UpperCase(ExeFileName))  or  (UpperCase(FProcessEntry32.szExeFile) = 
      UpperCase(ExeFileName)))  then  
     begin  
      Result := True; 
     end;  
    ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32); 
   end;  
  CloseHandle(FSnapshotHandle); 
end;  

procedure  TForm1.Button1Click(Sender: TObject); 
begin  
   if  processExists('notepad.exe')  then  
    ShowMessage('process  is  running') 
  else 
    ShowMessage('process not running'); 

end;



    本文转自 OldHawk  博客园博客,原文链接:http://www.cnblogs.com/taobataoma/archive/2007/08/20/862668.html,如需转载请自行联系原作者



相关文章
|
5月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
Gaussian Process
【6月更文挑战第14天】
44 4
|
6月前
|
Shell
etcd.service: main process exited, code=exited, status=203/EXEC
etcd.service: main process exited, code=exited, status=203/EXEC
181 1
|
网络协议
Job for named.service failed because the control process exited with error code.
Job for named.service failed because the control process exited with error code.
809 0
‘Client‘ is not allowed to run in parallel.Would you like to stop the running one?
‘Client‘ is not allowed to run in parallel.Would you like to stop the running one?
567 0
‘Client‘ is not allowed to run in parallel.Would you like to stop the running one?
|
网络协议
Job for named.service failed because the control process exited with error code.怎么解决
本篇内容记录了如何解决Job for named.service failed because the control process exited with error code.的问题。
3619 0
Job for named.service failed because the control process exited with error code.怎么解决
成功解决ConvergenceWarning: lbfgs failed to converge (status=1): STOP: TOTAL NO. of ITERATIONS REACHED L
成功解决ConvergenceWarning: lbfgs failed to converge (status=1): STOP: TOTAL NO. of ITERATIONS REACHED L
gconf-sanity-check-2 exited with status 256
gconf-sanity-check-2 exited with status 256
|
关系型数据库 Java MySQL