Código
Muitos programas Windows permitem apenas uma cópia em execução de cada vez. Isto é interessante principalmente quando é um grande aplicativo, pois duas cópias ao mesmo tempo usaria muito mais memória. Em aplicativos desenvolvidos em Delphi podemos ter esta característica.
Vejamos:
- Crie um novo projeto;
- Mude o "Name" do Form1 para ADFormPrinc;
- Altere o código-fonte do arquivo Project1.dpr
conforme abaixo:
uses
Forms, Windows,
Unit1 in 'Unit1.pas' {ADFormPrinc};
{$R *.RES}
var
Handle: THandle;
begin
Handle := FindWindow('TADFormPrinc', nil);
if Handle <> 0 then begin { Já está aberto }
Application.MessageBox('Este programa já está aberto. A cópia ' +
'anterior será ativada.', 'Programa já aberto', MB_OK);
if not IsWindowVisible(Handle) then
ShowWindow(Handle, SW_RESTORE);
SetForegroundWindow(Handle);
Exit;
end;
Application.Initialize;
Application.CreateForm(TADFormPrinc, ADFormPrinc);
Application.Run;
end.
Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009