博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

判断Exe文件是否正在运行的函数

Posted on 2008-11-07 09:45  YangHe  阅读(209)  评论(0)    收藏  举报
判断Exe文件是否正在运行的函数
 function TForm1.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;