OnCloseQuery OnClose

I have made an application in Delphi 3 where I want to update an INI-file
when the application is closed.
I first put the update routine in the OnClose event of the mainform. This
works fine when the user shuts down the application normally but when it is
shut down when the user clicks the Start button and "Shut down the
computer" then the OnClose event is apparently not called. It works fine
when I put the INI-file update routine in the OnCloseQuery event.
Is it a bug in Delphi that the OnClose event is not allways called or is it
supposed to be this way?
Finn Tolderlund