3

두 개의 개별 솔루션 인 SolutionA와 SolutionB가 있습니다.VS2010의 여러 솔루션 디버깅

SolutionA 
    ProjectA1 
     References: ProjectB1.dll, ProjectB2.dll 
    ProjectA2 

SolutionB 
    ProjectB1 
    ProjectB2 

은 내가 무엇을하고자하는 프로그램을 디버깅 할 수 SolutionA를 실행하는 것입니다,하지만 다음에 ProjectA1를 단계별로뿐만 아니라 (SolutionB을 디버깅 할 두 번째 IDE를 연결 다음과 같이 SolutionA는 SolutionB의 출력을 참조 예를 들어 ProjectB1).

지금까지 내가 해낸 유일한 방법은 SolutionB에 ProjectB1을 추가하는 것입니다. TFS에서 솔루션을 체크 아웃해야하고 디버깅 목적으로 동일한 프로젝트로 인식되지 않는 것 같습니다. . 이것을 할 수있는 방법이 있습니까?

+0

IDE의 * 인스턴스 *를 사용하여 솔루션 B를 디버깅하는 동기는 무엇입니까? 동일한 환경에서 둘 다 디버깅하지 않는 이유는 무엇입니까? –

+0

VS의 단일 인스턴스에서 두 개의 "솔루션"을 디버깅 할 수 없습니다. 한 번에 하나의 열린 솔루션 만 가질 수 있습니다. 그러나 그가하려고하는 것은 (솔루션 A 내부의 프로젝트 B를 열어) 작동해야합니다. –

답변

1

내 보낸 라이브러리가 포함 된 더 큰 프로젝트에서이 문제가 자주 발생합니다. 당신이 취하는 접근법은 올바른 것이고 작동해야합니다.

소스 제어 문제로 시작 : 프로젝트가 일반적인 루트 폴더를 공유하지 않기 때문에 TFS에서이 문제가 발생했습니다. 프로젝트 파일이 하위 폴더에 있지 않을 때 TFS는 좋아하지 않습니다. 솔루션 파일의 위치. 프로젝트 B1에서 소스 제어 바인딩을 제거하려고 시도 할 수 있습니다. 프로젝트 B1이 솔루션 A의 현재 작업 공간에 있지 않은 별도의 작업 공간을 갖는 것이 여기서 많은 도움이된다는 것을 알게되었습니다. (단지 프로젝트 B1이 포함 된 솔루션을 체크인하지 않도록주의하십시오. 그렇지 않으면 해결책을 얻는 다른 사람들은 오류가 발생할 수 있습니다.)

디버깅을 위해 동일한 프로젝트로 고려되지 않는 한, 올바른 구성/구조 파일, 디버깅을 사용하여 빌드 된 파일 및 pdb 파일을 사용할 수 있는지 확인하십시오. 원본 파일이 DLL이 빌드되었을 때와 동일한 폴더 위치에 있으면 VS에서 찾아야합니다. 이 작업을 수행하려면 프로젝트가 솔루션에 있어야 할 필요조차 없습니다. VS는 소스 파일을 사용할 수있는 한 찾을 것입니다. 프로젝트에 솔루션을 추가하면 추가 탐색, 인텔리 센스 등을 얻을 수 있습니다.

최악의 경우 프로젝트 A1 참조를 프로젝트 레벨 참조로 임시 변경하십시오. 다시 이 방법으로 솔루션을 확인하지 않아도 디버깅 프로세스가 올바르게 작동하는 빠른 방법을 확인하십시오.

관련 문제