Aplicação em execucao mais de uma vez

Delphi

07/06/2012

Pessoal

Como fazer para quando a aplicação já estiver em execução e minimizada não deixar o cliente chamá-la novamente.
Grato.
Marcos Roberto

Marcos Roberto

Curtidas 0

Respostas

Marco Salles

Marco Salles

07/06/2012

Bem ha algumas formas . Vc pode utilizar o findWindows

Hwnd := FindWindow (´TPrograma´, ´Programa´);

eu particularmente utilizo para Isto o MUTEX

coloque no seu dpr ( unit do Program ) o seguinte código

uses
Forms,
Windows,
Dialogs,
//Principal in ´Principal.pas´ ,
{ Mais alguns formulários... }


{$R *.RES}

begin
CreateMutex(nil, True, ´XyZzWw´);
if GetLastError = ERROR_ALREADY_EXISTS then // testa se o Mutex ja foi criado
Exit;

Application.Initialize;
.... demais códigos
GOSTEI 0
Marcos Roberto

Marcos Roberto

07/06/2012


Valeu, deu beleza !
GOSTEI 0
Marco Salles

Marco Salles

07/06/2012

O Mutex é uma boa prática né...
GOSTEI 0
POSTAR