2014-04-10 4 views
0

나는 내 프로젝트에 dll 파일을 포함시켰다. dll의 pdb 파일도있는 라이브러리 폴더에서 참조합니다. 컴파일 할 때 dll과 pdb가 주 프로젝트의 bin 폴더에 복사 된 것을 볼 수 있습니다. 작은 프로젝트에서 이것은 훌륭하게 작동하며 아무 문제없이 DLL로 디버깅 할 수 있습니다. 그러나 대용량 프로젝트에서 VS는 pdb 파일이 프로젝트 bin 폴더에 포함되어 있어도 특정 cs 파일을 계속 요청합니다. 그 CS 파일을 찾을 수 있다면 괜찮습니다.하지만 성가시다.왜 디버깅 할 때 Visual Studio에서 cs 파일을 요청합니까?

왜 Visual Studio에서 cs 파일을 요구하는 경우가 있습니까?

답변

4

주어진 정보를 바탕으로 최선을 다하지만 정보가 불완전한 경우가 있습니다. 포기할 준비가되면, 파일을 제공 할 수있는 기회를 제공합니다.

PDB는 일반적으로 msbuild가 DLL을 빌드하기 위해 호출 된 것처럼 파일 경로를 저장합니다. 경로가 변경된 경우 (예 : DLL이 작성된 위치와 다른 컴퓨터에 있거나 파일 시스템의 파일이 이동 한 경우) 경로 정보가 제대로 작동하지 않습니다.

비주얼 스튜디오 (소스 제어 시스템의 소스 파일을 다시 찾을 수 있도록 PDB의에 충분한 정보를 포함 할 수 있습니다 source indexing라는 프로세스가있다

그래서 당신은 정확히가 있었다으로 올바른 파일을 얻을 빌드 시간). 그러나 이것은 일반적으로 빌드가 발생한 후에 PDB를 수정하기 위해 수행해야하는 추가 단계입니다.

+0

감사합니다. 좋은 답변입니다. – Pompair