Hola JLR:
Más o menos deducía lo que ocurría, pero dado que no soy gurú en estos temas, he reproducido tu error y de hecho obtengo el EExternalException.
En el ApplicationsEvents:
Código Delphi
[-]
if e is EExternalException then
begin
s := TStringList.Create;
s.Add('error grave');
s.SaveToFile('c:\Miprograma\NetworkError\mio.txt'); FrmErrorGrave.ShowModal;
Application.Terminate;
end;
El Application.Terminate no ayudará mucho, porque el Sistema Operativo también lo hará por nosotros.
Si necesitas mostrar un mensaje en tu ordenador "Cliente", puedes crear una ventana informando al usuario de los sucesivos errores que va a dar el programa.
En el lado servidor, podrías tener un programa monitoreando la carpeta 'NetworkError' que permita informarte (mediante correo, un sonido, etc) del problema.
Saludos y Suerte!!