본문 바로가기

반응형

Visual Studio

(4)
[Visual Stuido] LNK1285: corrupt PDB file C++로 만들어진 프로젝트를 빌드하는 도중 디스크 용량이 부족하다는 메시지와 함께 1차 빌드를 실패 했다. 디스크 정리 후 다시 빌드를 했으나 아래와 같은 오류와 함께 계속 빌드 오류가 발생. >LINK : fatal error LNK1285: corrupt PDB file 'C:\Work\프로젝트\위치한\디렉토리\x64\출력디렉토리\프로젝트이름.pdb'; delete and rebuild 아무리 리빌드를 하고 비주얼 스튜디오를 껐다 켜도 계속 같은 에러를 내며 실패한다. 그러다가 갑자기 눈에 들어온.. delete and rebuild 해당 위치에 있는 pdb 파일을 삭제 후 다시 빌드하니 정상적으로 빌드가 되었다. 이것 때문에 날린 시간을 생각하니 속이 쓰리다.
Visual Studio 2010에서 std::vector<std::string>::insert 메모리 릭 inserting in a std::vector of std::string causes memory leak 위와 같은 보고가 있었군요. 요약을 하자면 아래 코드를 실행 하면 메모리 릭이 발생한다는 것. #include "stdafx.h" #include #include int _tmain(int argc, _TCHAR* argv[]) { // debug memory leaks _CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF ); { std::vector vec; vec.reserve(3); vec.push_back("1"); vec.insert(vec.begin(), 2, "2"); } return 0; } VS 2010 SP1에서 패치 되..
Handle leak 찾기 이 글의 대상은 윈도우 프로그래밍에 대해서 어느 정도 이해를 하고 있는 사람들을 대상으로 합니다. 기본적으로 핸들과 커널 오브젝트에 대한 개념에 대해 알고 있어야 하며(모른다면 여기로), 디버깅에 대해서 약간의 기본적 지식을 가지고 계시는 것이 좋습니다. 본 포스트는 디버깅에 관련된 툴들의 사용법에 대해서 다루고 있으며, 자세한 사용법 보다는 기본적인 사용법위주로 문제 해결에 관련된 부분만 다루고 있습니다. 보다 자세한 정보를 원하시면 해당 툴에 관련된 링크를 따라 가시면 많은 도움이 될 것입니다. 프로그래밍을 하다 보면 원하든 원하지 않든(거의 이 경우가 대부분이만) 종종 자원을 흘리고 다니는 경우가 있다. 여기서 말하는 자원이란 것은 파일이든, 메모리든 핸들이든 여러가지가 될 수 있지만 오늘은 특히 ..
[Visual Studio] Break point 버그 없는 프로그램을 만드는 것이 가장 좋은 방법이긴 하지만 현실적으로 처음 부터 그런 것을 만든다는 것은 디버거에 대한 모독이며 여지껏 나왔던 디버깅 관련 책들에 대한 도전이다. 말이 이상하긴 하지만 디버깅이 프로그래밍에서 빠져서는 안되는 중요한 요소라는 것을 강조하고 싶은 것이니 대충 '디버깅은 중요하다' 정도로 이해하고 넘어 가도록 하자. 이렇게 중요한 디버깅을 함에 있어서 Visual studio는 상당히 도움되는 툴들을 제공하고 있는데 그 중에 제일미로 꼽을 수 있는 것이 바로 '브레이크 포인트(Break point)'다. 여기 와서 브레이크 포인트가 뭐냐고 묻는다면...나도 할 말이 없다. 그냥 브레이크 포인트는 알고 있고 대충 visual studio에서 제공하는 기본적인 디버깅 관련 툴들은..

반응형