[C#] PDB(*.pdb) 파일(?)
PDB 파일이란 무엇이며 솔루션을 다시 빌드 할 때 릴리스 폴더에서 PDB 파일을 어떻게 제외시킬 수 있습니까?
PDB 파일에는 디버거가 작업 할 정보가 들어 있습니다.
릴리스 빌드에는 디버그 빌드보다 정보가 적습니다.
그러나 전혀 생성하지 않으려면 프로젝트의 빌드 속성으로 이동하여 릴리스 구성을 선택하고 “고급 …”을 클릭 한 다음
"디버그 정보"에서 "없음"을 선택하십시오.
오늘까지는 Exception.StackTrace예외를 해결하는 데 필요한 파일 및 줄 번호 정보가없는 메시지 상자에 왜 누락 되었는지 알아 내려고 시도 할 때까지 모든 것이 제대로 작동했습니다 .
이 게시물을 다시 읽고 중요한 정보를 발견했습니다
.PDB는 앱을 실행하는 데 필요하지 않지만 파일과 줄 번호가 StackTrace문자열 에 있어야 합니다.
PDB 파일을 실행 가능 폴더에 포함 시켰으며 이제는 모두 정상입니다.
PDB 는 P rogram D ata B ase 의 약자입니다.
이름에서 알 수 있듯이 프로그램을 디버그 모드로 실행하는 데 필요한 정보를 유지 관리하는 저장소 (데이터베이스와 같은 영구 저장소)입니다.
여기에는 코드를 디버깅하는 동안 (Visual Studio에서) 디버거가 Visual Studio에서 중단 될 것으로 예상되는 지점을 삽입 한 지점과 같은 중요한 관련 정보가 많이 포함되어 있습니다.
*.pdb디버그 폴더에서 파일 을 제거하면 Visual Studio가 중단 점에 여러 번 실패하는 이유 입니다. Visual Studio 디버거는 파일을 사용하여 스택 추적에서 예외가 발생한 정확한 줄 번호의 코드 파일을 알려줄 수도 *.pdb있습니다. 따라서 효과적으로 pdb 파일은 프로그램을 디버깅하는 동안 개발자에게 큰 도움이됩니다.
일반적으로 *.pdb파일 생성을 제외하지 않는 것이 좋습니다 .
프로덕션 릴리스 관점에서해야 할 일은 pdb 파일을 작성하지만 제품 설치 프로그램의 고객 사이트에는 제공하지 않는 것입니다.
생성 된 모든 PDB 파일을 필요한 경우 나중에 사용 / 참조 할 수있는 기호 서버에 보존하십시오.
특히 프로세스 충돌과 같은 문제를 디버깅하는 경우에 적합합니다.
크래시 덤프 파일 분석을 시작하고 *.pdb빌드 프로세스 중에 만들어진 원본 파일이 유지되지 않으면 Visual Studio에서 크래시를 일으키는 정확한 코드 줄을 만들 수 없습니다 .
PDB 파일은 디버거에 의해 사용되는 정보가 포함되어 있습니다.
응용 프로그램을 실행할 필요가 없으며 릴리스 된 버전에 포함시킬 필요가 없습니다.
Visual Studio에서 pdb 파일이 생성되지 않도록 설정할 수 있습니다.
명령 행 또는 스크립트에서 빌드하는 경우 /Debug스위치 를 생략하십시오.
C#프로젝트를 빌드하면, exe 혹은 dll파일과 함께 pdb파일도 함께 나오는 것을 종종 확인하셨을 것입니다.
pdb파일은 프로그램을 디버깅할 때 필요한 파일입니다.
pdb파일 속에는 디버깅에 필요한 정보들이 포함되어 있습니다.
이 말을 뒤집으면 프로그램을 배포할 때에는 pdb파일이 있어선 안 되겠죠.
그래서 혹시 배포 패키지에 pdb파일이 섞여 들어가는 것을 막기 위해 빌드 옵션을 설정할 수가 있습니다.
그럼 지금부터 pdb파일을 나오게 하는 법, 안 나오게 하는법에 대해 알아보도록 하겠습니다.
>>>>PDB파일 안나오게 하는 법
'c# 언어 > 중급과정' 카테고리의 다른 글
Hexa 4가지 항목으로 점수계산 로직 (0) | 2022.03.06 |
---|---|
LINQ 쿼리 소개(C#) (0) | 2022.02.23 |
Tris & Background Process Combination (0) | 2022.02.15 |
FindWindow를 이용한 WebBrowser Refresh Try!! (0) | 2022.02.08 |
Assembly.LoadFrom() : DLL 활용하여, Form을 띄우기 (0) | 2022.01.27 |