![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Numero de linea del programa en DELPHI
Muy buenas:
Tengo algunos problemas muy raros con mis aplicaciones y quiero probar lo siguiente. Mi aplicacion esta en Delphi 5 y se conecta por ODBC a MySql. Muchas veces me da errores raros y quiero hacer un Try except y que en el except me diga en que linea del programa ha fallado. Si alguien supiera como hacerlo me ahorraria un monton de tiempo de investigacion. Muchas gracias |
#2
|
||||
|
||||
Recuerdo haber leído algun artículo que explicaba de una forma básica cómo hacerlo. Incluso creo recordar que alguna vez en el foro se ha hablado de ello.
Otra opción es mirar algun paquete comercial que te de el trabajo hecho tipo: * MadExcep * Exception Magic * EurekaLog
__________________
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. |
#3
|
|||
|
|||
Hola:
vale, es que acabo de mirar cosas por ahi y hablan de lo que ya tenemos hecho, que es encerrar el codigo en un Try Except. Seria mas preciso saber en que linea dio el error, supongo (no lo he investigado aun) que si se crea una TException Class o algo parecido, tendria que tener alguna propiedad que nos indiquen cosas. Saludos |
#4
|
||||
|
||||
Cita:
Piensa que tu ejecutable, el programa, final no se organiza con líneas de código como el que programas en Delphi. Una vez compilado y linkado el ejecutable es otro programa diferente (por decirlo así) en un lenguaje diferente (código máquina). Cuando una de esas líneas en código máquina falla, no tienes la correspondencia con el programa original, por lo tanto no es posible saber la línea que falló (a no ser qué...). A no ser que en tu programa guardes información de Debug y en ejecución intentes utilizar esa información de Debug para conocer cual es la línea original del programa que corresponde a la que ha fallado. Eso es algo que no es sencillo y que hacen estos paquetes, de ahí que cuando "salte" una excepción muestren información extendida como la que se ve en las imágenes que he adjuntado en el anterior post (entre esas informaciones está la pila de llamadas, el número de línea,...)
__________________
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. |
#5
|
|||
|
|||
Claro
Hola:
Es como lo dices, lo que se me ocurrio es numerar en una variable cada 10 lineas sumarle entonces sabes en todo momento en que trozo de codigo te ha fallado y al dar la excepcion despliegas el numero de linea ultimo. Con esto sabras prefectamente que esta despues de esa linea y antes de la siguiente. creo que hare eso, por ahora, total, tengo muy pocos procesos muy criticos y esa solucion me sirve. Gracias |
#6
|
||||
|
||||
Cita:
A medida que vayas modificando tu código no se cómo va a quedar.
__________________
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. |
#7
|
|||
|
|||
Naturlich
Claro, pero de cualquier manera, no tengo otra solucion, ademas esa solucion no sera eterna, el codigo de esa unidad casi no se toca.
Por otro lado si que es verdad que algun otro programador o yo mismo no recuerde lo que he hecho antes y lo enredemos mas de lo que esta. bueno, muchas gracias por entreneterte con mis tonterias. saludos JoSeX |
#8
|
||||
|
||||
Échale un vistazo a esta página. Tal vez te pueda servir, Explica un poco pòr encima el funcionamiento de los MAP files. A partir de ahí puedes continuar buscando.
Esta también es interesante.
__________________
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. |
#9
|
||||
|
||||
Yo uso el Eurekalog (mencionado en el segundo mensaje por Neftali) y me va muy bien. Al saltar una excepción te ofrece mucha mas información y el Call stack es muy completo y claro (numero de linea, instrucción llamada, ves los hilos... etc).
Estoy muy contento con el EurekaLog. Saludos. |
![]() |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
obtener numero de linea de un Tmemo | gaz-g7 | Varios | 2 | 27-06-2007 23:10:03 |
numero de linea de un TreeView | Racy | Varios | 1 | 23-10-2005 18:22:10 |
obtener el numero de linea. | maruenda | Varios | 1 | 30-10-2004 05:11:05 |
como saber numero de linea, nombre de archivo,funcion por codigo | orfeo | OOP | 0 | 30-07-2004 18:42:15 |
Número de Línea | Ulises | Providers | 2 | 21-07-2003 16:29:37 |
![]() |
|