Musi zamknąć!

Jeżeli nie zamyka, to znaczy, że program wykonuje jakąś operację, która to blokuje, np. działaj jakaś pętla. By w trakcie działania pętli wymusić zamknięcie aplikacji funkcją Terminate, trzeba w tej pętli odświeżać kolejkę komunikatów funkcją Application->ProcessMessages().