2013-06-03 2 views
0

솔루션에 2 개의 C++ 프로젝트가 있습니다.
ExecB (실행 파일)은 ProjA (dll)에 따라 다릅니다. 링크 된 프로젝트 참조가 대상 폴더에 복사되지 않습니다.

그래서 ExecB의 속성에서 나는 참고로 에게의 proja를 추가하고, 로컬 복사 = 사실를 선택합니다.
문제는 ProjA의 dll이 ExecB의 출력 폴더 폴더에 복사되지 않는 것입니다. 따라서 실행 파일은 분명히 실행되지 않습니다.

제안 사항?

답변

0

C++ 프로젝트의 경우 Visual Studio 템플릿/마법사는 출력 디렉터리를 솔루션의 하위 폴더 인 $(SolutionDir)$(Configuration)\으로 설정합니다. 따라서 개발자는 DLL Search Path이 적합합니다. 솔루션 폴더 계층 외부의 솔루션에 프로젝트를 추가 한 경우에도 작동합니다. 빌드는 모든 바이너리를 해당 솔루션의 출력 폴더에 저장합니다.

이 방법이 효과가 없으면 모든 프로젝트의 모든 플랫폼/구성 조합에서 출력 디렉터리 속성을 확인하십시오. 또한 빌드 구성 관리자가 선택한 솔루션 빌드가 솔루션 플랫폼/구성에 적합한 모든 프로젝트를 빌드하고 있음을 보여야합니다.

참조하려는 로컬 프로젝트 참조가 참조 된 .NET 어셈블리에만 적용됩니다. docs은 모호하며 너무 간결합니다. (대개의 경우 어셈블리의 의미없는 사용은 WinSxS 어셈블리보다는 .NET 어셈블리를 의미합니다.)

관련 문제