블로그는 나의 힘!
[ Programing ]/Other2013. 5. 21. 23:17

메모리 릭 검출 프로그램

 

 

  Memory Validator 
  http://www.softwareverify.com/download-evaluation.php
___________________________________________________________________

출처 :  http://struggle.tistory.com/403

 

 

 

 

Memory Validator를 설치한다. c++용으로 설치해야 한다.
http://www.memoryvalidator.com/cpp-products.php


VC++ 의 프로젝트를 생성하고 다음과 같이 설정한다.

프로젝트 -> 속성 -> 구성속성 -> C/C++ -> 코드 생성 -> 런타임 라이브러리 항목에서 다중 쓰레드 선택 ( /MD 또는 /MDt )
프로젝트 -> 속성 -> 구성속성 -> 일반 -> 공용언어 런타임 지원 항목을 /clr로 설정한다.

 

 


참고 사항
http://msdn.microsoft.com/ko-kr/library/abx4dbyh(v=vs.80).aspx
http://msdn.microsoft.com/en-us/library/72zdcz6f

 


Memory Validator를 실행하고 File -> Start application( 단축키 F4 )을 누른다.
Application to start에서 Browse 버튼을 클릭한다.
EXE 나 실행파일을 찾는다.

NEXT
NEXT

Nomal을 선택한다. 보편적으로 사용하는 설정이다.

Start Application으로 실행한다.

 


이 때, 이렇게 화면처럼 나오지 않으면, DLL연동을 안한 것이다.
런타임 라이브러리 항목에서 다중 쓰레드 선택 ( /MD 또는 /MDt )을 하지 않으면
 메모리 릭을 감지할 수 없다는 경고창이 대신 뜬다.

그 다음 Launch Application을 누른다.

프로그램이 실행된다.
 
refresh를 누른다.

Memory Validator

 

 

 

 

___________________________________________________________________________________

위 방법과 다른 방법 -(힘들었어..)

 

 

 

 

콘솔 프로젝트 의 경우

프로젝트 -> 속성 -> 구성속성 -> C/C++ -> 코드 생성 -> 런타임 라이브러리 항목에서 다중 쓰레드 선택 ( /MD 또는 /MDd)
프로젝트 -> 속성 -> 구성속성 -> 일반 -> MFC 사용 항목 : 공유 DLL에서 MFC 사용

 

MFC 의 경우

프로젝트 -> 속성 -> 구성속성 -> C/C++ -> 코드 생성 -> 런타임 라이브러리 항목에서 다중 쓰레드 선택 ( /MD 또는 /MDd)

WinAPI의 경우

프로젝트 -> 속성 -> 구성속성 -> C/C++ -> 코드 생성 -> 런타임 라이브러리 항목에서 다중 쓰레드 선택 ( /MD 또는 /MDd)

로 설정 해주자 lib 를 사용할경우도 해당 lib 를 위의 경우에 맞게 설정해주면 된다.

그리고 이후 사용법은 http://www.softwareverify.com/cpp-memory.php 의 동영상을 보고 따라 하면 된다.

 

 

 

 http://struggle.tistory.com/403 의 방법엔 설정이 Normal 이 적용 되지만 현재 이와 같은 방법으로 설정이 Normal 설정으로

적용되지 않는 현상이 발생 하였다. CreateProcess 설정으로 실행하면 된다.

 

컴파일중 특정 라이브러리가 이미 적용 되어있다고 뜨면

프로젝트 -> 속성 -> 구성속성 -> 링커 -> 명령줄 에 /FORCE:MULTIPLE  를 추가해주시면 됩니다.

아예 무시 해버리고 싶은 라이브러리의 경우엔

프로젝트 -> 속성 -> 구성속성 -> 링커 -> 입력 에 해당라이브러리를 입력해주시면 됩니다.

 

 

 

'[ Programing ] > Other' 카테고리의 다른 글

반디 캡쳐 라이브러리  (0) 2013.05.21
VS 추적점 걸기  (0) 2013.05.21
Adplus.vbs 무한루프를 검출해보자!!  (0) 2013.05.21
MIDI File Format 분석  (0) 2013.05.21
C# - Standard Numeric Format Strings  (0) 2013.05.21
Posted by Mister_Q