Ver Mensaje Individual
  #8  
Antiguo 22-10-2015
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is online now
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.439
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Angel.Matilla Ver Mensaje
¿Existe la posibilidad de poder capturar además del nombre del componente que genera la excepción el del formulario donde se ubica?
Se podría probar para el nombre del componente y del form, algo como:
(no lo he compilado, te lo pongo de memoria, pero la idea es esa)

Código Delphi [-]
// esto...
Str := Sender.Name;

// o esto...
if (Sender is TComponent) then
  Str := TComponent(Sender).Name;
end;

// Para el formulario puedes probar...
if Assigned(Sender.Owner)) then begin
  if (Sender.Owner is TForm) Then begin
    Str := TForm(Sender.Owner).Name;
  end;
end;

Algo similar habrá que hacer para los frames, si es que los usas.


Cita:
Empezado por Angel.Matilla Ver Mensaje
Voy un poco más allá: Hay casos en los que la excepción no se genera en un componente concreto, como puede ser una fución llamada; ¿como podría capturar la línea en la que se produce el error?
Esto es un poco más complicado, pero puedes buscar ayuda sobre la unit jclDebug.
Pertenece a las Jedi y te permite ampliar las opciones de debug, con cosas que se acercan a lo que necesitas.

Otras opciones que puedes investigar son: madExcept, EurekaLog o similares.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita