Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Delphi a Application.Terminate v podprograme?

To ti nepomůže. Application.Terminate je procedura, z jejíhož volání se to musí vrátit. Sice se volá API funkce PostQuitMessage, ale všechno se musí dodělat a nastaví se jen příznak Application.Terminated, který se testuje uvniř smyčky zpracování zpráv - a tam se musí řízení programu vrátit po poctivém dodělání všech procedur - takhle to vypadá uvnitře Application.run:

repeat
   try
      HandleMessage;
   except
      HandleException(Self);
   end;
until Terminated;
Až se provádění programu vrátí do smyčky zpracování zpráv (uvnitř Application.Run), pak se to může ukončit.
Při programování řízeném událostmi (např. zprávami Windows) a v objektovém programování Delphi, nelze tak jednoduše programově aplikaci ustřelit pod prd*elí.:));-)

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny