C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[48806] Re:[만해] 예외 발생시 스택 트레이스 가능 한가요?
dd [] 1278 읽음    2007-04-09 01:01
EurekaLog인가 하는 상용 플러그인이 있는데 그걸로 가능할거 같습니다만...

강재호.만해 님이 쓰신 글 :
: 예외가 발생시 처리 하는 부분인데요
:
: 다음과 같습니다.
:
: Application->OnException = ExceptionFilter;
:
: void __fastcall Tfrm_Main::ExceptionFilter(TObject *Sender, Exception *ExceptionCode)
: {
:                 AnsiString a_Msg;
:     TStringList* ErrMsg = new TStringList;
:     ErrMsg->Text =  ExceptionCode->Message;
:     a_Msg  = "Exception Class = " + Sender->ClassName();
:     a_Msg += ENTER;
:     a_Msg += AnsiReplaceStr(ExceptionCode->Message, ::CR, ENTER);
:
:     ExceptionLogs(Sender->ClassName(), a_Msg);
:     delete ErrMsg;
:     return;
: }
:
: 이런식으로 되어 있는데요
:
: 가끔씩 보면
:
: TcxCustomInnerTextEdit
: Exception Class = TcxCustomInnerTextEdit
: 'U0088' is not a valid integer value
:
: TArtPanel
: Exception Class = TArtPanel
: '' is not a valid integer value
:
: TServerClientWinSocket
: Exception Class = TServerClientWinSocket
: Access violation at address 008EA4BD in module 'ezClick.exe'. Read of address 00000018
:
: TServerClientWinSocket
: Exception Class = TServerClientWinSocket
: List index out of bounds (3)
:
: 이런식으로 예외가 발생하는 부분에 대한 정보가 나오는데요
:
: TServerClientWinSocket
: Exception Class = TServerClientWinSocket
: Exception Method=DataOnlyOneCheck
: Exception Context=Query:Select *** From table Execute
: Exception Message=EAccessViolation
:
: DB쪽의 에러는 제가 거의 대부분 전처리를 하기 때문에 이렇게 구분을 시켜서 메타 데이타를 추가 시켜서
:
: 보기 쉽게 되어 있지만,
:
: 그외의 예외들 그러니깐 UnHandled Exception은 저위와 같이 메모리 주소랑 에러 경우만 나오기 때문에
:
: 참 파악 하기가 힘듭니다.
:
: 그리고 프로그램 특성상 필드 테스트는 거의 어렵고요,
:
: 결국은 릴리즈 나간데서 정보를 얻어야 한다는 얘기인데
:
: UnHandled Exception에서 발생하는 정보가 작다 보니 좀 어렵습니다.
:
: 그래서 Unhandled Exception 발생시 다른건 몰라도 이 예외를 발생 시킨 함수를 좀 알수 없을까요?
:
: a -> b -> c -> d -> Exception 발생.
:
: 이렇게 되었을때 제 로그 상으로는 d는 알수 있는데 a,b,c 까지는 알수 없습니다.
:
: a,b,c,d 까지 알수 있는 방법이 없을까요?
:
: 최대 7에서 작게 3개 정도 가지 콜 트레이스를 할수 있으면 좋겠는데
:
: 누가 방법을 아시면 좀 가르켜 주세요~

+ -

관련 글 리스트
48732 [만해] 예외 발생시 스택 트레이스 가능 한가요? 강재호.만해 1217 2007/04/03
48806     Re:[만해] 예외 발생시 스택 트레이스 가능 한가요? dd 1278 2007/04/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.