0

VS2013에서 클래스 라이브러리를 디버깅하려고하는데 라이브러리에 중단 점을 설정할 때마다 코드를 실행할 때 무시되는 것 같습니다.어떻게 VS2013에서 클래스 라이브러리를 디버그 할 수 있습니까?

동일한 솔루션에있는 콘솔 프로젝트를 사용하여 클래스 라이브러리의 코드를 호출합니다. 두 프로젝트를 연결하기 위해 클래스 라이브러리에 의해 생성 된 .dll을 콘솔 프로젝트에 대한 참조로 추가했습니다.

두 프로젝트를 올바르게 연결하고 VS2013이 중단 점을 무시하지 않게하려면 어떻게합니까?

+0

"나는 dll을 추가 했습니까?"라는 의미는 무엇입니까? 당신은 그렇게 않았다 방법? 다른 프로젝트를 어떻게 참조 했습니까? –

+0

클래스 라이브러리의 컴파일 된 DLL 버전에 연결된 것처럼 들립니다. 대신, 클래스 라이브러리와 테스트 프로젝트를 단일 솔루션에두고 DLL 파일이 아닌 클래스 라이브러리에 대한 프로젝트를 참조해야합니다. –

+0

@GerrieSchenck 참조> 참조 추가를 마우스 오른쪽 단추로 클릭하고 클래스 라이브러리 프로젝트의 bin/Debug 디렉토리에 생성 된 .dll 파일을 선택하십시오. –

답변

0

라이브러리 (DLL) 파일과 관련된 PDB 개의 파일이 필요합니다.

PDB 파일이 없으면 라이브러리 코드에 중단 점을 설정할 수 있지만 빨간색 브레이크 포인트 원은 "심볼을로드 할 수 없습니다 ...."와 같이 말합니다. 어떤 중단 점에도 착륙하십시오.

라이브러리의 PDB 파일을 가져올 수 있다면 프로젝트의 bin 폴더에 복사하고 라이브러리 DLL에 대한 참조를 추가하면 Visual Studio가 만족스러워 야합니다.

또한 VS에서 코드를 디버깅 할 때 디버그 -> Windows -> 모듈로 이동하면로드 된 어셈블리를 표시하는 IDE에 새 창이 열립니다. 이 창은 기호 (PDB)가로드되었는지 여부를 알려줍니다.

0

내 솔루션에는 두 개의 클래스 라이브러리가 있었으며 하나의 응용 프로그램에서 두 개의 라이브러리가 필요했습니다. 클래스 라이브러리 코드에서 아무 곳이나 끊을 수 없습니다. 여기에 언급 된 모든 설정이 확인되었습니다. 클래스 라이브러리 dll을 참조에서 제거한 다음 참조로 다시 추가하여 해결했습니다. Voila. 클래스 라이브러리에서 이전에 무시 된 중단 점이 활성화되었습니다.