Yes, on exception the program will check the what the last except block is. As your application doesn't have one, it can't find one and it will simply kill the program.
The LCL does a little trick, by internally handling exceptions within the main/message loop (i.e. in the Application.Run) so exceptions inside an form event called handled by the message loop will result in a message box notification. But exceptions outside the LCLs message loop need to be handled manually