문제

Visual Studio 2008에서 C#에서 프로그램 데이터베이스 파일 (*.pdb)에 대한 사용자 정의 경로를 설정하는 방법이 있습니까? C ++를 사용하면 이것은 매우 간단했습니다 (프로젝트 설정 -> 링커 -> 디버깅 -> 프로그램 데이터베이스 파일 생성). 어떤 이유로 든 Microsoft는 C#에 대해 제거 (또는 숨겨진) 것으로 보입니다.

"표준"사용법은 PDB가 실행 파일과 함께 빈 디르에있는 것이지만, 그 디렉토리는 상당히 엉망이되어 /OBJ에 위치하는 것이 정말로 선호합니다. 항상 C ++에서 사용했습니다.

감사!

도움이 되었습니까?

해결책

C# 컴파일러는이를 지원합니다 /PDB 명령 줄 옵션. 그러나이 옵션은 IDE의 빌드 탭에 노출되지 않습니다.

IDE 빌드 프로세스는 이미 C# 컴파일러에게 .pdb 파일을 OBJ Debug 디렉토리에 넣도록 요청합니다. 그것의 사본은 bin debug에서 CopyFilestoOutPutDirectory라는 MSBuild 작업에 의해 끝납니다. 이 작업은 VS2008 용 C : Windows Microsoft.net Framework V3.5 디렉토리에 위치한 파일 인 Microsoft.common.targets에서 구성됩니다. 이 파일을 기술적으로 편집하고 제거 할 수 있습니다 <Copy> .pdb를 복사하는 요소. 파일 상단의 경고에주의를 기울이면 수정하기 전에 백업 사본을 작성하십시오.

이렇게하는 기본적인 문제는 이것이 영향을 미친다는 것입니다. 모두 모든 프로젝트의 구축. 이제 디버거가 더 이상 .pdb 파일을 찾을 수 없습니다. 그것은 최고의 쇼 스토퍼 일 것입니다.

다른 팁

구축 후 이벤트를 추가하고 원하는 위치에 PDB를 복사하십시오)

.pdb 파일은로드하려면 .exe 및 .dll과 동일한 폴더에 상주해야합니다.

PDB 파일은 예외 처리시로드되며 예외가 발생하는 코드의 정확한 줄로 다시 추적하는 데 필요합니다.

당신이 할 수있는 것은 응용 프로그램과 함께 게시하는 대신 빌드 중에 PDB를 기호 서버로 옮기는 것입니다. 그런 다음 예외 추적을 분석 할 때 입력하십시오.

체크 아웃 이 게시물 PDB 파일, 기호 서버 등에 대한 정보.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top