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
[39623] [질문] MemProof 로 Trace했을 때 메모리 누수 현상...
땅주인 [heaven2] 1694 읽음    2005-03-24 22:28
멤버로 선언한

TImage *m_pSite[MAXSITE] 가 있는데..

프로그램 실행 중에 동적으로 이미지 객체를 선언해서 화면에 뿌리고 합니다.
그런데.. 어느 순간 m_pSite[0] 의 내용이 다른 내용으로 바뀌어 있습니다.
입력해 주는 루틴은 전혀 없구요.. 메모리 누수현상이 의심이 되는데..

MemProof로 돌려보니 디버거 윈도우에 아래와 같이 나옵니다.
Exception C0000005 ACCESS_VIOLATION at 77E77DB2 이라고 나오는데..
이 것을 어떤 식으로 트레이스를 해야 하는 지요?

소스의 어느 루틴에서 이런 현상이 생기는 지.. 도무지 알 수가 없습니다..

이 도구로 메모리 누수 현상을 잡을 수 있는 방법을 알려주세요..
감사합니다.
참고로 300바이트 짜리 Structure를 꽤 많이 사용하는데.. 멤버로 10깨쯤 사용하고
각 함수에서 로컬 변수로 10개쯤 사용합니다. Strucutre에는 대부분이 integer이고
AnsiString이 몇 개 들어 있는데.. 이 부분이 의심이 가긴 한데...

어쨌거나 MemProof로 메모리 누수를 추적해 들어갈 수 있는 방법을 알려주세요..

감사합니다.

Create process : 3
LoadDLL : 77F80000 ntdll.dll
LoadDLL : 0CD00000 cg32.dll

....

LoadDLL : 62600000 HookzIB.hxl
LoadDLL : 62700000 Hookzodbc.hxl
Create thread  : Handle : 2000, ThreadID 2072
Create thread  : Handle : 2008, ThreadID 2076
Create thread  : Handle : 2012, ThreadID 2080
CreateFileMapping error : 지정된 경로를 찾을 수 없습니다
Exception C0000005 ACCESS_VIOLATION at 77E77DB2
----  Exception stack trace ----
77E77DB2 - IsBadReadPtr in  (-1)
62042FB5 -  in  (-1)
069D1D14 - in
069D1E54 - in
74726F70 - in C:\Neo\Dev\Client\Client.exe
Exception 80000003 BREAKPOINT at 00612102
LoadDLL : 06D80000 borlndmm.dll
1133
LoadDLL : 4BDE0000 idapi32.dll
LoadDLL : 79B20000 MPR.dll
LoadDLL : 4C9E0000 idr20009.dll
LoadDLL : 4E8E0000 bantam.dll

....

LoadDLL : 74F80000 WSHTCPIP.dll
LoadDLL : 777F0000 RNR20.dll
Create thread  : Handle : 2196, ThreadID 2084
LoadDLL : 77790000 WINRNR.dll
LoadDLL : 777A0000 rasadhlp.dll
LoadDLL : 4CDE0000 idpdx32.dll
LoadDLL : 4C5E0000 idsql32.dll
LoadDLL : 4C1E0000 idbat32.dll
Create thread  : Handle : 2220, ThreadID 2092
UnloadDLL : 4CDE0000 C:\Program Files\Common Files\Borland Shared\BDE\IDPDX32.DLL
UnloadDLL : 4E8E0000 C:\Program Files\Common Files\Borland Shared\BDE\BANTAM.DLL
Thread Ended : 2072
Thread Ended : 2076
Thread Ended : 2080
Thread Ended : 2084
Exception C0000005 ACCESS_VIOLATION at 62501264
----  Exception stack trace ----
62501264 -  in  (-1)
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
Exception C0000005 ACCESS_VIOLATION at 62501264
----  Exception stack trace ----
62501264 -  in  (-1)
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl

....

6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
6250C460 - in C:\Temp\memp0942\HookAMem.hxl
Process Ended : 5

+ -

관련 글 리스트
39623 [질문] MemProof 로 Trace했을 때 메모리 누수 현상... 땅주인 1694 2005/03/24
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.