Após sua aplicação criada, antes da ultima compliação uze o algoritmo abaixo, para sua aplicação ou seja seu arquivo executavel não seja aberto varias vezes ao mesmo tempo
var
handle: Thandle;
begin
handle := FindWindow(''TfrmPrincipal'',nil);
if Handle<>0 then
begin
application.MessageBox(''Sistema, ja esta em execução. A cópia'' +
'' anterior será desativada.'',''sistema em execução'', mb_ok);
if not ISWindowVisible(Handle) then
showWindow (handle, sw_restore);
setForegroundWindow(handle);
application.Terminate;
end;
begin
application.Initialize;
application.Createform(TfrmPrincipal, frmPrincipal);
application.Run;
end;
handle: Thandle;
begin
handle := FindWindow(''TfrmPrincipal'',nil);
if Handle<>0 then
begin
application.MessageBox(''Sistema, ja esta em execução. A cópia'' +
'' anterior será desativada.'',''sistema em execução'', mb_ok);
if not ISWindowVisible(Handle) then
showWindow (handle, sw_restore);
setForegroundWindow(handle);
application.Terminate;
end;
begin
application.Initialize;
application.Createform(TfrmPrincipal, frmPrincipal);
application.Run;
end;
Grato
Diogenes Dourado