La clase de Excepción en Delphi 2009 recibió una serie de características nuevas. Algunos de ellos están relacionados con la obtención de un StackTrace:Enlazando una Stacktrace en Delphi 2009
- propiedad StackTrace: cadenaleer getStackTrace;
- propiedad StackInfo: Puntero lea FStackInfo;
- clase var GetExceptionStackInfoProc: función (P: PExceptionRecord): Puntero;
- clase var GetStackInfoStringProc: función (Info: Puntero): cadena;
- clase var CleanUpStackInfoProc: procedimiento (Info: Puntero);
¿Alguien ha usado esto para obtener un seguimiento de la pila? Sí, sé que hay otras formas de obtener un seguimiento de pila, pero si es compatible de forma nativa en la clase Excepción, preferiría aprovechar eso.
Actualización: Hay un interés blog post about this. Lo cubre en mucha profundidad.
Usted es 100% correcto. Estas nuevas funciones son para el marco de enganche de excepciones de terceros. Ahora, hay una forma documentada de hacer algo de trabajo en lugar de usar hacks y hooking. Además, el valioso campo FStackInfo permite asociar excepciones con otra información, que proviene del motor de rastreo de excepciones (¡por fin!). – Alex