Como Saber Quem Fechou o Programa
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.
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
Curtidas 0
Respostas
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.
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