Como Saber Quem Fechou o Programa

Delphi

22/04/2008

Tenho uma rotina que é executada no Onclose do form principal.
O form principal e, consequentemente a aplicação, às vezes é fechado pelo menu que há na aplicação e também pelo ´X´ do form, mas também há situações onde o sistema é fechado por um outro aplicativo meu.

Pergunto: É possível saber quem fez o fechamento do programa - o próprio sistema ou o sistema externo? Como?
O que preciso é que, quando o sistema for fechado pelo outro programa, as rotinas do Onclose não sejam executadas.

Obrigado.


Armindo

Armindo

Curtidas 0

Respostas

Armindo

Armindo

22/04/2008

Resolvi assim:

No onClose do FormPrincipal, verifico se a outra aplicação está ativa. Se sim, deduzo que foi ela que pediu o fechou a aplicação principal. Aí executo as rotinas que desejo.

if FindWindow(nil,´Aplicação Acessória´) <= 0 then //se o Aplicação Acessória está ativo é pqe foi ele que está fechando o programa.

Espero que ajude mais alguém.


GOSTEI 0
POSTAR