exe em execução

13/12/2005

0

Ola amigos como posso fazer para verificar se o meu exe ja esta em execução

usei esse codigo mas não funciona

var
Hwnd:THandle; //VARIAVEL NECESSARIA
begin

Hwnd:=FindWindow(´Tfrmprincipal´,´FastContact´);
if hwnd=0 then
begin
Application.Initialize;
Application.Title := ´Fast Contact´;
Application.CreateForm(Tfrmprincipal, frmprincipal);
Application.Run;
end
else
begin
if not IsWindowVIsible(Hwnd) then
begin// se minimizado
ShowWindow(Hwnd, SW_ShowMaximized); //mostra
PostMessage (Hwnd, Wm_user, 0,0); //restaura
end;
SetForegroundWindow(Hwnd); // visivel
end;


Uiliangurjon

Uiliangurjon

Responder

Posts

13/12/2005

Marcio.theis

Eu pelo menos utilizo de uma outra forma, fiz um projeto de teste, de uma olhada:
program Project1;

uses
  Forms,
  Dialogs,
  Windows,
  SysUtils,
  Unit1 in ´Unit1.pas´ ;

{$R *.res}

var
    hMyMutex: tHandle;
begin
hMyMutex:=CreateMutex(nil,True,PChar(Uppercase(ExtractFileName(Application.ExeName))));
if (hMyMutex = 0) or (GetLastError = error_Already_Exists) then
    begin
    ShowMessage(´A aplicação já esta rodando. ´);
    Application.Terminate;
    end;
try
    Application.Initialize;
    Application.CreateForm(TForm1, Form1);
    Application.Run;
finally
    ReleaseMutex(hMyMutex);
    end;
end.



Responder

15/12/2005

Uiliangurjon

como faço para que se o aplicativo estivar aberto ele seja maximizado


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar