function exe_is_running(const exeName:String) : Boolean;  //exeName:不要扩展名的Exe主文件名   
var  
  hCurrentWindow:HWnd;   
  szText:array[
0..254] of char;   
begin  
  Result :
= False;   
  hCurrentWindow:
=Getwindow(Application.Handle,GW_HWNDFIRST);   
  
while hCurrentWindow <> 0 do  
  begin  
    
if Getwindowtext(hCurrentWindow,@sztext,255)>0 then  
    begin  
       
if LowerCase(pchar(@sztext))=LowerCase(exeName) then  
       begin  
         Result :
= true;   
         Exit;   
       end;   
    end;   
    hCurrentWindow:
=Getwindow(hCurrentwindow,GW_HWndNext);   
  end;   
end;   

用法:
如我们要判断'Live.exe'程序是否正在运行/是否已经启动
if exe_is_running(Live) then
  ....
else
  ....