Ele até dá a mensagem de que já esta aberto, mas não consegui fazer ele restaurar a última instância do projeto.
Se alguém puder me ajudar fico grato.
program Teste;
uses
Forms,
Windows,
Dialogs,
UPrincipal in 'UPrincipal.pas' {FormPrincipal},
UDM in 'UDM.pas' {DataModule1: TDataModule};
{$R *.res}
var
HprevHist: HWND;
begin
Application.Initialize;
// Evita carga dupla da aplicacao
begin
HprevHist := FindWindow(Nil, PChar('Teste'));
if HprevHist <> 0 then
begin
ShowMessage('O Teste já está sendo executado em outra janela !');
Application.Terminate;
Exit;
end;
end;
ShowWindow(HprevHist,SW_NORMAL);
Application.Title := 'Teste';
Application.CreateForm(TFormPrincipal, FormPrincipal);
Application.CreateForm(TDataModule1, DataModule1);
Application.Run;
end.










