1

2 개의 프로젝트 A와 B가있는 솔루션 S가 있습니다. B는 A의 exe가 내장 된 리소스로 필요합니다.프로젝트의 exe를 다른 프로젝트의 exe에 삽입하고 최신 상태로 유지하십시오.

그래서 B> Add> 기존 항목 추가 ...>[...]\S\A\bin\debug\A.exe을 선택하고이 새 항목에 대해 Build Action = Embedded Resource를 설정합니다.

모든 것이 잘 작동합니다. 하지만 해당 항목의 전체 경로 속성을 보면 [...]\S\B\A.exe 경로가 표시됩니다. 즉, 프로젝트 A를 다시 빌드하면 B 프로젝트의 내장 리소스에 영향을주지 않습니다.

프로젝트 A가 생성 한 원본 EXE 리소스로 프로젝트 B의 포함 된 리소스를 최신 상태로 유지하려면 어떻게해야합니까?

답변

1

예, 이것은 의도적으로 설계된 동작입니다. IDE는 일반적으로 자원을 프로젝트 디렉토리에 복사합니다.이 도구는 리소스가 손실되어 백업을 잊어 버렸기 때문에 더 이상 프로그램을 빌드 할 수없는 몇 가지 나쁜 날을 피할 수 있도록 도와줍니다.

원하는 것을 원하지 않습니다. 항목을 제거하고 Add + Existing 항목을 다시 사용하십시오. 추가 버튼에는 아래쪽 화살표 모양이 있습니다. 해당 화살표를 클릭하고 "링크로 추가"를 선택하십시오. 이제 그 복사본이 만들어지지 않을 것이고 프로젝트는 실제 파일을 참조 할 것입니다.

빌드하기 전에 A.exe를 사용할 수 있고 최신 버전인지 확인해야합니다. B. 솔루션 탐색기 창에서 B 프로젝트를 마우스 오른쪽 단추로 클릭하고 종속성 만들기를 클릭 한 다음 A 프로젝트를 선택합니다. A가 B보다 먼저 건설됩니다.

관련 문제