2012-09-03 6 views
13

충돌 한 응용 프로그램의 *.dmp (덤프) 파일이 있습니다. 이제 다른 컴퓨터에서 충돌 한 프로세스를 분석하려고합니다. 즉, 하나의 컴퓨터에서 응용 프로그램이 다운되고 다른 컴퓨터에 Visual Studio가 있습니다.Visual Studio에서 크래시 덤프 분석

지금, 스택 추적 및 내 앱의 모든 기호를 보려면 무엇이 필요합니까? *.exe 파일과 *.dmp 파일로 충분합니까?

아니면 소스 코드와 PDB 파일이 필요합니까?

그렇다면 소스 코드와 실행 파일을 프로세스가 실행중인 컴퓨터의 디렉터리 구조와 동일한 디렉터리 구조에 배치해야합니까?

Visual Studio에서 크래시 덤프 파일에 PDB 파일을 첨부하는 방법은 무엇입니까?

답변

20

아니요, 괜찮은 스택 추적을 얻으려면 .pdb 파일이 필요합니다. 지금까지 가장 간단한 방법은 프로그램을 빌드 한 컴퓨터에서이 작업을 수행하는 것입니다. 소스 코드와 .pdb 파일은 올바른 위치에 있습니다.

다음으로 가장 좋은 것은 정확히 동일한 실행 파일을 실패한 컴퓨터에 설치된 동일한 폴더에 복사하는 것입니다. .pdb 파일을 동일한 디렉토리에 복사합니다. 즉, 원래 빌드 위치에서 찾을 수없는 경우 디버거가 다음에 보입니다. 디버거가 소스 코드가있는 문에 도착하고 .pdb가 제거되지 않으면 소스 코드 파일 위치를 지정하라는 메시지가 나타납니다.

다음으로 가장 좋은 것은 Tools + Options, Debugging, Symbols이며, .pdb 파일이 들어있는 디렉터리 경로를 추가하십시오.

동일한 대화 상자에서 Microsoft Symbol Server (http://msdl.microsoft.com/download/symbols)도 설정하십시오. 그러면 Windows DLL에 대한 심볼이 생기고 Windows DLL에서 충돌이 발생한 경우 자신의 코드로 정확하게 추적 할 수 있습니다.

관련 문제