Usando un ApplicationsEvents (lo siento, no recuerdo en qué pestaña de la paleta de componentes está), puedes capturar todas las excepciones que pueden ocurrir.
Para detectar el error concreto, puedes usar el except:
Código Delphi
[-]
try
blahhh
except
on E: DatabaseError do
begin
end
else on E: eOutofMemory do
begin
end
else
begin
raise; end;
end;
Normalmente tienes que saber qué tipo de excepción puede saltar, y eso lo sabes leyendo la ayuda sobre las funciones que estés usando dentro del try .. except.
Saludos