문제

Delphi 2009의 예외 클래스는 여러 가지 새로운 기능을 받았습니다. 그들 중 다수는 스택 트레이스를 얻는 것과 관련이 있습니다.

  • 재산 스택 트레이스 : 읽다 getStacktrace;
  • 재산 StackInfo : 포인터 읽다 fstackinfo;
  • 클래스 var getExceptionStackInfoproc : 기능 (P : PexceptionRecord) : 포인터;
  • 클래스 var getStackInfostringProc : 기능 (정보 : 포인터) : ;
  • 클래스 var CleanupStackInfoproc : 절차 (정보 : 포인터);

누구든지 이것을 사용하여 스택 추적을 얻었습니까? 예, 스택 추적을 얻는 다른 방법이 있다는 것을 알고 있지만, 예외 클래스에서 기본적으로 지원되면 오히려 그것을 활용하려고합니다.

업데이트: 관심이 있습니다 이것에 대한 블로그 게시물. 깊이로 덮습니다.

도움이 되었습니까?

해결책

나에게 이것은 자신의 스택 추적을 연결할 수있는 프레임 워크처럼 보입니다. 나는 이것이 jcldebug와 함께 IDE에서 내부적으로 사용될 수 있다고 생각합니다. 아마도 사용자가 Madexcept 또는 다른 구현을 공급할 수있는 것일 수 있습니다.

다른 팁

아니요, 아직 사용하지 않았습니다 (현재 Madexcept를 사용하고 있으며 JCLDEBUG와 함께 실험을했습니다) - 팁에 감사드립니다!

Tondrej가 맞습니다. 예외 클래스에 추가 된 새로운 기능은 타사가 자신의 스택 추적 코드를 RTL에 연결하는 것입니다. 예외 클래스의 기본 구현은 자체 스택 추적을 생성하지 않습니다.

당신은 madexcept를 보는 것이 좋습니다. 처리되지 않은 예외 (스크린 횡령, 이메일 등)를 탁월하게 처리 할 수있을뿐만 아니라 거의 모든 곳에서 사용할 수있는 스택 추적을 되 찾을 수있는 좋은 호출 가능한 루틴 세트가 있습니다. 브리

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top