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,如需转载请自行联系原作者



相关文章
Error running Application. Command line is too long.
【2月更文挑战第2天】Error running Application. Command line is too long. 问题处理
|
2月前
|
负载均衡 Java 应用服务中间件
Client not connected, current status:STARTING
Client not connected, current status:STARTING
74 1
|
11月前
|
网络协议
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.
510 0
成功解决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
‘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?
448 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.的问题。
3080 0
Job for named.service failed because the control process exited with error code.怎么解决
Starting a Gradle Daemon, 5 busy and 1 incompatible and 1 stopped Daemons could not be reused, use --status for details FAILURE: Build failed with an
执行gradle build出的问题,查看hs_err_pid11064.log日志文件发现,是电脑的RAM不足导致
3969 0
|
关系型数据库 Java MySQL