부모글 보이기/감추기 AD BLOCK 해제 요청 이 글에는 광고가 많이 들어가 있지 않습니다. adblock을 해제하셔도 글을 읽는데 그다지 부담이 없으니 해제를 부탁드립니다. (연관된 글이 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 ... 그 외 알게 모르게 읽었던 모든 자료들.(생각날 때마다 추가하겠습니다.) [다음 글] 디버깅 기술: 6. .NET 예외 처리 정리[이전 글] 디버깅 기술: 5.1. PDB 파일에 따른 Debug 정보 - WinForm + Library 유형의 프로젝트 [연관 글] 개발 환경 구성: 18. 윈도우즈 인증서 서비스 이야기.NET Framework: 468. PDB 파일을 연동해 소스 코드 라인 정보를 알아내는 방법.NET Framework: 1027. 닷넷 응용 프로그램을 위한 PDB 옵션 - full, pdbonly, portable, embedded [최초 등록일: 12/27/2006] [최종 수정일: 7/17/2021] 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다. by SeongTae Jeong, mailto:techsharer at outlook.com 비밀번호 댓글 작성자 2006-08-11 06시17분 [비밀!!] 좋은정보 감사합니다^^(꾸벅) [guest] 2008-03-03 02시34분 Getting the right exception context from a memory dump ; https://docs.microsoft.com/en-us/archive/blogs/junfeng/getting-the-right-exception-context-from-a-memory-dump kevin25 2009-01-20 09시35분 How to Debug a workflow with Visual Studio ; https://docs.microsoft.com/en-us/archive/blogs/philloth/how-to-debug-a-workflow-with-visual-studio kevin25 2009-07-30 04시32분 [anyflow] 더 말씀 드릴 필요도 없이 아주 잘봤습니다.그러고보니..이건, 책을 쓰려는 의도에서?? ^^ [guest] 2009-07-30 05시04분 ^^ 책을 쓸 요량이면 여기다 안 쓰죠. 이 지식이 많이 많이 공유되길 바라며 쓴 것입니다. (너무 모르는 분들이 많아서.) kevin25 2009-08-23 09시48분 How Many Secrets do .NET PDB Files Really Contain? ; http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/08/22/how-many-secrets-do-net-pdb-files-really-contain.aspx kevin25 2012-07-22 05시04분 Debugging with Symbols ; https://docs.microsoft.com/en-us/windows/win32/dxtecharts/debugging-with-symbols 정성태 ... 91 92 93 94 95 96 97 [98] 99 100 101 102 103 104 105 ... NoWriterDateCnt.TitleFile(s) 11485정성태4/11/201823714.NET Framework: 738. C# - Console 프로그램이 Ctrl+C 종료 시점을 감지하는 방법111484정성태4/11/201824775.NET Framework: 737. C# - async를 Task 타입이 아닌 사용자 정의 타입에 적용하는 방법111483정성태4/10/201828099개발 환경 구성: 358. "Let's Encrypt"에서 제공하는 무료 SSL 인증서를 IIS에 적용하는 방법 (2) [1]11482정성태4/10/201820505VC++: 126. CUDA Core 수를 알아내는 방법11481정성태4/10/201832247개발 환경 구성: 357. CUDA의 인덱싱 관련 용어 - blockIdx, threadIdx, blockDim, gridDim11480정성태4/9/201822217.NET Framework: 736. C# - API를 사용해 Azure에 접근하는 방법 [2]111479정성태4/9/201817876.NET Framework: 735. Azure - PowerShell로 Access control(IAM)에 새로운 계정 만드는 방법11478정성태11/8/201920163디버깅 기술: 115. windbg - 덤프 파일로부터 PID와 환경변수 등의 정보를 구하는 방법 [1]11477정성태4/8/201817587오류 유형: 460. windbg - sos 명령어 수행 시 c0000006 오류 발생11476정성태4/8/201819111디버깅 기술: 114. windbg - !threads 출력 결과로부터 닷넷 관리 스레드(System.Threading.Thread) 객체를 구하는 방법11475정성태3/28/201821454디버깅 기술: 113. windbg - Thread.Suspend 호출 시 응용 프로그램 hang 현상에 대한 덤프 분석11474정성태3/27/201819567오류 유형: 459. xperf: error: TEST.Event: Invalid flags. (0x3ec).11473정성태3/22/201824695.NET Framework: 734. C# - Thread.Suspend 호출 시 응용 프로그램 hang 현상211472정성태3/22/201818652개발 환경 구성: 356. GTX 1070, GTX 960, GT 640M의 cudaGetDeviceProperties 출력 결과11471정성태3/20/201822043VC++: 125. CUDA로 작성한 RGB2RGBA 성능 [1]111470정성태3/20/201824223오류 유형: 458. Visual Studio - CUDA 프로젝트 빌드 시 오류 C1189, expression must have a constant value11469정성태3/19/201817250오류 유형: 457. error MSB3103: Invalid Resx file. Could not load file or assembly 'System.Windows.Forms, ...' or one of its dependencies.11468정성태3/19/201816717오류 유형: 456. 닷넷 응용 프로그램 실행 시 0x80131401 예외 발생11467정성태3/19/201816137오류 유형: 455. Visual Studio Installer - 업데이트 실패11466정성태3/18/201817248개발 환경 구성: 355. 한 대의 PC에서 2개 이상의 DirectX 게임을 실행하는 방법11463정성태3/15/201819651.NET Framework: 733. 스레드 간의 read/write 시에도 lock이 필요 없는 경우111462정성태3/14/201822572개발 환경 구성: 354. HTTPS 호출에 대한 TLS 설정 확인하는 방법 [1]11461정성태3/13/201825104오류 유형: 454. 윈도우 업데이트 설치 오류 - 0x800705b4 [1]11460정성태3/13/201817602디버깅 기술: 112. windbg - 닷넷 메모리 덤프에서 전역 객체의 내용을 조사하는 방법11459정성태3/13/201818434오류 유형: 453. Debug Diagnostic Tool에서 mscordacwks.dll을 찾지 못하는 문제11458정성태2/21/201819460오류 유형: 452. This share requires the obsolete SMB1 protocol, which is unsafe and could expose your system to attack. [1] ... 91 92 93 94 95 96 97 [98] 99 100 101 102 103 104 105 ...