Microsoft MVP성태의 닷넷 이야기
디버깅 기술: 5. PDB 이야기 [링크 복사], [링크+제목 복사],
조회: 40634
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 3개 있습니다.)
제목 짓기가 영 난감하군요. ^^;

.NET으로 오면서 기존에 너무나 어렵게만 구현되던 것들이 쉽게 구현되는 것들이 많습니다.
PDB 파일을 통한 디버깅 심벌을 처리해서 Crash 되는 모듈의 주소를 찾아내는 것 역시 .NET이 주는 혜택 중의 하나입니다.

이번 강좌에서는, PDB에 관한 이야기를 하나씩 풀어보도록 하겠습니다.

이야기 진행 순서는, 일단 생각나는 것만 다음과 같습니다.
쪼끔 기대가 되시려나? ^^

1. PDB 파일에 따른 Debug 정보 - WinForm + Library 유형의 프로젝트

2. PDB 파일에 따른 Debug 정보 - .NET 2.0 Web Application Project + Library 유형의 프로젝트

3. PDB 파일에 따른 Debug 정보 - .NET 2.0 Web Site Model Project

4.1 VS.NET 2005 디버그 모드에서의 PDB 파일 사용 차이 (1)
4.2 VS.NET 2005 디버그 모드에서의 PDB 파일 사용 차이 (2)

5.1 VS.NET 2005를 이용한 미니덤프 파일 분석 (1)
5.2 VS.NET 2005를 이용한 미니덤프 파일 분석 (2)

6. WinDBG를 이용한 미니덤프 파일 분석

7. Microsoft의 PDB 파일 관리

8. Symbol Server 생성

9. PDB 파일과 소스 코드

10. CCP를 이용한 Windows Source Code 수준의 디버깅

11. 소스 서버 구성

12. GAC에 등록된 Assembly 디버그

13. [내용 예약]

14.1 ASP.NET 디버깅 환경 구성(1)
14.2 ASP.NET 디버깅 환경 구성(2)

15 ~ [x]. [미정]

[부록 1] AppVerifier 사용법

[부록 2] VS.NET 2003/2005의 다중 프로젝트 디버깅

[부록 3] COM+ 서버 응용 프로그램에 대한 F5 디버깅 방법

[부록 4] .NET 예외 처리 정리

[부록 5] .VS.NET 원격 디버깅

[부록 6] 비스타/롱혼 - VS.NET 2005에서의 웹 애플리케이션 디버깅 설정

최종적으로 Symbol Server, Source Server 및 WinDBG까지도 다뤄보도록 하겠습니다.



설마 여기 있는 모든 정보를 제가 스스로 알아낸 것이라고 오해하시는 분들은 없으시겠지요! ^^
여기 있는 정보들은 모두 다음과 같은 참고 자료를 통해서 얻을 수 있는 내용들입니다.

책:
- Debugging Applications for Microsoft .NET and Microsoft Windows
- 고급 개발자들만이 알고 있던 Windows 구조와 원리 그리고 Codes

웹 사이트:
- BUGSLAYER - SOS: It's Not Just an ABBA Song Anymore
; https://docs.microsoft.com/en-us/archive/msdn-magazine/2003/june/bugslayer-sos-it-s-not-just-an-abba-song-anymore

- BUGSLAYER - Mini Dump Snapshots and the New SOS
; https://docs.microsoft.com/en-us/archive/msdn-magazine/2005/march/bugslayer-mini-dump-snapshots-and-the-new-sos

- SOS Ref Manual
; C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\Tool Developers Guide\Samples\sos\SOS.htm

- .Net exceptions - Tracking down where in the code the exceptions occurred
; http://blogs.msdn.com/tess/archive/2006/05/18/601002.aspx

- Visual Studio Debugger - Debugging in Visual Studio
; https://docs.microsoft.com/en-us/visualstudio/debugger/debugging-in-visual-studio?view=vs-2015

- Code Center Premium integration into Visual Studio
; https://docs.microsoft.com/en-us/visualstudio/debugger/how-to-debug-with-code-center-premium-source?view=vs-2015

- Use the Microsoft Symbol Server to obtain debug symbol files
; https://docs.microsoft.com/en-us/windows/win32/dxtecharts/debugging-with-symbols


... 그 외 알게 모르게 읽었던 모든 자료들.(생각날 때마다 추가하겠습니다.)

[연관 글]






[최초 등록일: ]
[최종 수정일: 7/17/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2006-08-11 06시17분
[비밀!!] 좋은정보 감사합니다^^(꾸벅)
[guest]
2008-03-03 02시34분
kevin25
2009-01-20 09시35분
kevin25
2009-07-30 04시32분
[anyflow] 더 말씀 드릴 필요도 없이 아주 잘봤습니다.
그러고보니..이건, 책을 쓰려는 의도에서?? ^^
[guest]
2009-07-30 05시04분
^^ 책을 쓸 요량이면 여기다 안 쓰죠. 이 지식이 많이 많이 공유되길 바라며 쓴 것입니다. (너무 모르는 분들이 많아서.)
kevin25
2009-08-23 09시48분
kevin25
2012-07-22 05시04분
정성태

... 136  137  138  139  140  141  142  [143]  144  145  146  147  148  149  150  ...
NoWriterDateCnt.TitleFile(s)
1480정성태8/22/201337868개발 환경 구성: 194. 윈도우 서버의 80 포트에 대한 port forwarding 설정 방법파일 다운로드1
1479정성태8/14/201325197오류 유형: 183. IIS - 바인딩 추가 시 Object reference not set to an instance of an object 오류 [5]
1478정성태8/14/201328565오류 유형: 182. 윈도우 정품 활성화 오류 - 0x80070426
1477정성태8/14/201327415VC++: 71. codeplex의 Project Austin - 실감나게 책장 넘기는 표현
1476정성태8/13/201335865디버깅 기술: 55. Windbg - 윈도우 핸들 테이블 (2)
1475정성태8/12/201334951.NET Framework: 377. 프로세스가 종료된 후에도 소켓이 살아있다면?파일 다운로드1
1474정성태8/10/201331080오류 유형: 181. 윈도우 8 - WmiPrvSE.exe 프로세스가 CPU 소비하는 현상
1473정성태8/8/201327893VC++: 70. Win32 socket이 Thread-safe할까? [1]파일 다운로드1
1472정성태8/7/201326263.NET Framework: 376. .NET 2.0의 유니코드 관련 문자열 비교 오류
1471정성태8/7/201331017개발 환경 구성: 193. .aspx 확장자 대신 .html 확장자를 사용하는 방법
1470정성태8/6/201327054오류 유형: 180. DISM.exe 0xc1510111 실행 오류
1469정성태8/6/201324112.NET Framework: 375. System.Net.Sockets.Socket이 Thread-safe할까? [2]파일 다운로드1
1468정성태8/6/201322259오류 유형: 179. IIS - No connection could be made because the target machine actively refused it 127.0.0.1:80
1467정성태8/5/201325707Java: 16. IE에 로드된 Java Applet의 다운로드 위치를 확인하는 방법
1466정성태7/27/201331332.NET Framework: 374. C#과 비교한 C++ STL vector 성능 [7]파일 다운로드1
1465정성태7/18/201334591기타: 33. C:\Windows\Installer 폴더의 용량 줄이기 [3]
1464정성태7/15/201322875오류 유형: 178. Visual Studio 2012 Express - ImportCardinalityMismatchException
1463정성태7/15/201323569오류 유형: 177. [DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.
1462정성태7/5/201326833VC++: 69. geek스러운 C/C++ 퀴즈 문제 [2]
1461정성태6/27/201343375.NET Framework: 373. C# 문자열의 인코딩이란?
1460정성태6/17/201325259.NET Framework: 372. PerformanceCounter - Category does not exist. [1]
1459정성태6/15/201328955Windows: 74. 한글 키가 아닌 영문 키를 기본으로 선택하는 방법 [5]
1458정성태6/13/201329706.NET Framework: 371. CAS Lock 방식이 과연 성능에 얼마나 도움이 될까요? [1]파일 다운로드1
1457정성태6/13/201325913개발 환경 구성: 192. "Probabilistic Programming and Bayesian Methods for Hackers" 예제 코드 실행 방법
1456정성태6/5/201334551.NET Framework: 370. C# - WebKit .NET 사용 [2]파일 다운로드1
1455정성태6/1/201328391.NET Framework: 369. ThreadPool.QueueUserWorkItem의 실행 지연 [4]파일 다운로드1
... 136  137  138  139  140  141  142  [143]  144  145  146  147  148  149  150  ...