3

"내 코드"디버그 설정과 관련이 없거나 코드 최적화라고 표시되었거나 디버그 코드로 표시되지 않았 음 배제되었습니다.Visual Studio 2012에서도 GAC에있는 라이브러리를 디버깅하지 않습니다

라이브러리를 사용하는 .net 프로젝트가 있습니다. 디버깅하기 위해 작은 프로젝트를 만든 다음 라이브러리 프로젝트를 추가했습니다. 테스트 프로젝트에서 라이브러리 프로젝트에 대한 참조를 추가했습니다. 테스트 프로젝트를 시작한 솔루션을 실행했는데 브레이크 포인트가 빈 빨간색 점으로 바뀐 것을 봅니다. 이 동일한 설치 프로그램은 Visual Studio 2005에서 완벽하게 작동합니다.

그러나 GAC에 설치된 동일한 라이브러리가 있었지만 제거되었으므로 이제는 중단 점이 올바르게 적용됩니다.

누구나이 동작이 VS 2012에서 새로운 것인지 알고 있습니까? 또는 그것을 앓고있는 사람?

답변

3

디버거가 어셈블리에 대한 기호 정보를 찾을 수없는 경우에 발생합니다. PDB 파일이 GAC에 존재하지 않기 때문에 다소 유망한 시나리오입니다. Debug + Windows + Modules를 사용하고 목록에서 어셈블리를 찾습니다. 심볼을 마우스 오른쪽 버튼으로 클릭하고 심볼로드 정보를 선택하여 디버거가 PDB 파일을 찾은 위치를 확인합니다.

dev 컴퓨터에서 GAC를 사용하지 마십시오. 순수한 배포 세부 정보입니다. 프로그래밍을하는 동안 사고가 발생합니다. pdb 파일에 문제가 생겨로드 된 어셈블리의 오래된 사본을 얻는 것. 괴상한 interop 시나리오에서만 디버깅하는 동안 GAC를 사용해야합니다.

+0

... 또는 GAC에서 찾을 수있는 컴파일러/빌드 서비스 인 a.s.o와 같은 인프라를 구축하려는 경우. –

관련 문제