Fórum programa roda uma so vez #171555
26/07/2003
0
tipo ele fica na bandeja (do lado do relogio), então se ele for mandado executar dinovo eu quero que ele abra, no caso saia do hide para show.
Bigtama
Curtir tópico
+ 0Posts
28/07/2003
Glauberms
[i:c92dfe06dc]program Project1;
uses
Forms, Windows,
Unit1 in ´Unit1.pas´ ;
{$R *.RES}
var
Handle: THandle;
begin
Handle := FindWindow(´Form1´, nil);
if Handle <> 0 then
begin { Já está aberto }
Application.MessageBox(´Este programa já está aberto.´ , ´Programa já aberto´, MB_OK);
if not IsWindowVisible(Handle) then
ShowWindow(Handle, SW_RESTORE);
SetForegroundWindow(Handle);
Exit;
end;
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.[/i:c92dfe06dc]
[b:c92dfe06dc]Importante:
Verifique se o nome ([i:c92dfe06dc]NAME[/i:c92dfe06dc]) do formulário principal de sua aplicação é Form1 se não o substitua no código assima.
Para testar este programa você deverá compilar o projeto e fechar o Delphi. Depois, procure o Project1.exe (projeto compilado) usando o Windows Explorer e tente executá-lo mais de uma vez e veja o que acontece.[/b:c92dfe06dc]
Espero que seja suficiente...
Gostei + 0
28/07/2003
Bigtama
vc saberia como fazer isso???
Gostei + 0
28/07/2003
Fórum Vini
eh mais fácil ainda...
program Project1;
uses
Forms, Windows,
Unit1 in ´Unit1.pas´ ;
{$R *.RES}
var
Handle: THandle;
begin
Handle := FindWindow(´Form1´, nil);
if Handle <> 0 then
begin { Já está aberto }
//Application.MessageBox(´Este programa já está aberto.´ , ´Programa já aberto´, MB_OK); //é só tirar essa linha
if not IsWindowVisible(Handle) then
ShowWindow(Handle, SW_RESTORE);
SetForegroundWindow(Handle);
Exit;
end;
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
Para colocar o ícone no tray, de uma olhada aqui no clube que tem um artigo ou dica falando sobre isso...
Espero ter ajudado.
Vinicius
Gostei + 0
28/07/2003
Bigtama
Gostei + 0
28/07/2003
Bigtama
[Error] Tsuki.dpr(20): Undeclared identifier: ´FindWindow´
[Error] Tsuki.dpr(23): Undeclared identifier: ´IsWindowVisible´
[Error] Tsuki.dpr(24): Undeclared identifier: ´ShowWindow´
[Error] Tsuki.dpr(24): Undeclared identifier: ´SW_RESTORE´
[Error] Tsuki.dpr(25): Undeclared identifier: ´SetForegroundWindow´
Gostei + 0
29/07/2003
Bigtama
[Error] Tsuki.dpr(20): Undeclared identifier: ´FindWindow´
[Error] Tsuki.dpr(23): Undeclared identifier: ´IsWindowVisible´
[Error] Tsuki.dpr(24): Undeclared identifier: ´ShowWindow´
[Error] Tsuki.dpr(24): Undeclared identifier: ´SW_RESTORE´
[Error] Tsuki.dpr(25): Undeclared identifier: ´SetForegroundWindow´
Gostei + 0
29/07/2003
Voruss
manda seu e-mail que eu te envio o componente.
Gostei + 0
30/07/2003
Bigtama
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)