newtype
::: newtype의 지식창고 :::
newtype
전체 방문자
오늘
어제
  • 분류 전체보기 (392)
    • Dev (214)
      • C, C++ (43)
      • Go (5)
      • Web (49)
      • DBMS (21)
      • DevOps (8)
      • Java (2)
      • Windows, Win32 (4)
      • Visual Basic (5)
      • C# (2)
      • Mobile (25)
      • SQL CE (7)
      • Google Map (6)
      • Python (2)
      • cygwin (2)
      • 기타 (32)
      • Ruby (1)
    • 명언 (10)
    • 모임 (18)
      • 붕주회 (3)
      • 신흥컴정 (14)
      • 웹20기 (1)
    • 사진 (8)
    • 불펌 (29)
    • 막글 (98)
    • 게임 (6)
    • 여행 (8)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • 관리

공지사항

  • whoami
05-11 10:21
hELLO · Designed By 정상우.
newtype

::: newtype의 지식창고 :::

Dev/C, C++

Visual Leak Detector 를 사용하여 Leak을 감지하는 방법.

2016. 2. 15. 08:42

Visual Leak Detector 를 사용하여 Leak을 감지하는 방법.

사용조건

  • Visual Studio 2008/2010/2012/2013/2015

사용방법 (VS2010 기준으로 설명합니다.)

  • 홈페이지에서 VLD를 다운받아 설치합니다.
    • https://vld.codeplex.com/releases/view/619330
  • Visual Sutdio 설정을 합니다.
    • VS를 실행하고, 적용할 솔루션을 엽니다.
    • VS를 실행해서 보기 > 다른 창 > Property Manager 창을 엽니다.
    • Property Manager 창에서 아무 프로젝트에서든 선택하고 적용하고자 하는 구성에서 "Microsfot.Cpp.x64.user"를 더블클릭 합니다.
    • 속성 페이지가 열리면, 왼쪽 메뉴 트리에서 VC++ Directorys > Include Directories에 VLD의 include 경로를 추가합니다.
      • 저는 "C:\Program Files (x86)\Visual Leak Detector\include" 여기에 설치되어 있네요.
    • 같은 창의 Libaray Directories에 VLD의 lib 경로를 추가합니다.
      • 저는 64 비트라서 "C:\Program Files (x86)\Visual Leak Detector\lib\Win64"를 추가 했네요.
      • 한번만 하면 솔루션 아래 여러개의 프로젝트가 있는경우 모두 반영됩니다.
  • stdafx.h 파일에 아래 코드를 추가합니다. 
    #include <vld.h>
    
    • 공식 Document에는 stdafx.h 호출후에 넣으라고 하는데, stdafx.h 파일에 넣어도 잘 돌아갑니다.
    • 공통되는 헤더 파일이 있으면 거기에 추가하면 됩니다.
  • 이제 VS에서 F7로 컴파일하고, F5로 실행합니다.
  • 프로그램이 정상 종료되면, 출력 > 디버그 창에 Leak 정보가 출력 됩니다.
    • VS의 디버그 중지로 하면 안됩니다.

참고

  • 직접 실행하는 경우.
    • 컴파일된 실행 파일을 VS에서 실행하지 않고 탐색기(또는 CMD)에서 직접 실행 하는 경우 아래 파일이 실행 파일과 같은 경로에 있어야 합니다.
      • dbghelp.dll
      • Microsoft.DTfW.DHL.manifest
      • vld_x64.dll
    • 해당 파일은 64비트의 경우 C:\Program Files (x86)\Visual Leak Detector\bin\Win64 에 있습니다.

  • https://vld.codeplex.com/


반응형
저작자표시

'Dev > C, C++' 카테고리의 다른 글

Simple Http Server  (0) 2017.06.08
OpenSSL 을 사용한 RSA  (0) 2017.05.30
debian 계열 linux에서 core 파일 생성 방법  (0) 2015.07.30
Serial-port 관련 자료 정리  (0) 2014.08.29
core 파일이 생성되는 한가지 상황  (1) 2011.10.31
    'Dev/C, C++' 카테고리의 다른 글
    • Simple Http Server
    • OpenSSL 을 사용한 RSA
    • debian 계열 linux에서 core 파일 생성 방법
    • Serial-port 관련 자료 정리
    newtype
    newtype
    지극히 개인적인 지식의 창고

    티스토리툴바