Programing

Visual Studio : 프로젝트의 속성을 복사하여 다른 프로젝트에서 사용할 수 있나요?

lottogame 2020. 11. 12. 07:39
반응형

Visual Studio : 프로젝트의 속성을 복사하여 다른 프로젝트에서 사용할 수 있나요?


Visual Studio 프로젝트에서 현재 C 파일을 컴파일하기 위해 여러 디렉터리, matlab, opencv 등과 같은 라이브러리를 추가했습니다.

예정된 모든 프로젝트에는 동일한 설정 / 속성이 필요합니다. 각 프로젝트의 속성을 개별적으로 설정해야하나요? 아니면 모든 프로젝트에 적용 할 수 있나요?


속성 시트를 사용해보십시오. 여러 프로젝트에서 상속 할 수있는 단일 속성 파일을 만들 수 있습니다.

  1. "보기> 다른 창> 속성 관리자"를 사용하여 속성 관리자를 불러옵니다. 프로젝트 및 구성이 표시됩니다.

  2. 구성을 마우스 오른쪽 단추로 클릭하고 "새 프로젝트 속성 시트 추가 ..."를 선택합니다. 이름을 지정하고 모든 프로젝트에 적합한 위치를 선택할 수 있습니다.

  3. 생성되면 빌드 구성과 마찬가지로 속성을 편집 할 수 있습니다.

  4. 해당 속성 시트를 다른 프로젝트의 기반으로 사용하려면 구성 또는 프로젝트를 마우스 오른쪽 단추로 클릭하고 "기존 속성 시트 추가 ..."를 선택하십시오. 원본 시트를 저장 한 위치로 이동하면 상속됩니다.

원본 시트에 대한 변경 사항은 재정의되지 않는 한이를 상속하는 모든 프로젝트에 적용됩니다. 체인 위쪽의 속성으로 이동하면 재정의하는 속성의 값이 굵게 표시됩니다. 항상 기본 시트의 값을 사용하도록하려면 해당되는 경우 "상위 또는 프로젝트 기본값에서 상속"옵션이 있습니다.


Visual Studio 2010 (내 생각에)에 구축 된 AtmelStudio 6.1을 사용하고 있지만 찾을 수있는 Property Manager가 없습니다. 그래서 제가 사용하는 hackish 시스템은 :

  1. 구성을 수정할 프로젝트를 닫습니다 (또는 최소한 상황에 맞는 메뉴를 통해 언로드).
  2. 텍스트 편집기에서 .cproj 파일 (XML)을 엽니 다 (VS가 잘 작동 함).
  3. 다른 경우에 대비하여 백업 사본을 만드십시오.
  4. 복사하려는 구성 데이터가있는 프로젝트의 .cproj 파일을 엽니 다.
  5. 원하는 구성 데이터를 찾으십시오. 구성은 PropertyGroup 태그 내부에 있습니다. 예를 들어, 제 경우에는

    <PropertyGroup Condition=" '$(Configuration)' == 'Preprocess only' "> 
    

    "전처리 전용"이라는 구성의 경우. 해당 태그의 시작부터 해당 태그의 끝까지 복사

    </PropertyGroup> 
    

    꼬리표.

  6. 블록을 대상 .cproj에 붙여 넣으십시오.

    </PropertyGroup>
    

    꼬리표. 구성 이름이이 파일에서 고유한지 확인하십시오. 저장.

완료되었습니다. 이제 VS에서 정상적으로 프로젝트를 열면 추가 된 구성을 선택할 수 있습니다.


Visual Studio 2010+의 경우 프로젝트 템플릿을 만들 수 있습니다 .

템플릿 생성 마법사에서 템플릿을 Visual Studio에 자동으로 추가하도록 선택하면 새 프로젝트를 생성 / 추가 할 때 템플릿이 나타납니다 (Visual Studio를 다시 시작한 후). 이 템플릿으로 생성 된 프로젝트는 동일한 프로젝트 속성을 갖습니다!

템플릿에 소스 코드 파일을 추가하는 가장 쉬운 방법은 솔루션 탐색기의 소스 코드 파일을 루트 (폴더 아래가 아님)에 다시 정렬하는 것입니다. 그런 다음 템플릿을 생성합니다.

왜? 때때로 파일을 기본 소스 코드 솔루션 탐색기 폴더 (파일 탐색기가 아닌 .project.filters 레이블) 아래에두면 소스 파일이 템플릿에 복사되지 않고 "문서를 열 수 없습니다. 템플릿을 사용하려고 할 때 "라는 메시지가 표시되면 템플릿에서 원하는 파일이 파일 탐색기에 없습니다.

솔루션 탐색기 폴더를 원하는 경우 템플릿 폴더의 압축을 풀고 변경 한 다음 다시 압축하여 템플릿에 수동으로 추가해야합니다.

예를 들어 템플릿에 포함 할 소스 파일을 템플릿 폴더에 문자 그대로 복사하여 붙여넣고 .vstemplate 파일을 편집합니다. 템플릿 편집에 대한 M $ 문서 .

<TemplateContent>
<!-- put new file references here and/or in your .vcxproj .vcxproj.filters --> 
 TargetFileName="HelloWorld.cl">HelloWorld.cl</ProjectItem>
      <ProjectItem ReplaceParameters="false" 
</TemplateContent>

관련 질문 :

내가 만든 VS 템플릿을 어떻게 사용하나요?

Visual Studio에서 만든 템플릿을로드하려면 어떻게하나요?

Visual Studio 프로젝트를 어떻게 복사합니까?

복잡한 프로젝트 나 공유 프로젝트에는 단순히 전체 프로젝트와 솔루션을 복사하여 붙여 넣는 것이 권장되지 않습니다. 다양한 GUID 및 파일 이름이 겹치면 버그가 발생할 수 있기 때문입니다.


MSVS 2017의 경우 @AaronMK에서 언급 한 프로세스가 작동하지 않습니다. 대신 다음을 수행하십시오.

  1. 보기-> 다른 창-> 속성 관리자
  2. 새 속성 시트를 추가합니다.
  3. 원하는 옵션을 편집하십시오.
  4. 기억할 수 있도록 적절한 이름을 지정하십시오.
  5. 오른쪽 버튼을 누르고 "저장 {myPropertySheet}"을 누르십시오.
  6. 기본 속성 시트와 함께 배치하고 원할 때마다 추가 할 수 있습니다 (속성 관리자-> 기존 속성 시트 추가-> 해당 위치 찾아보기). 이 디렉토리는 다음과 같습니다.C:\Users\{myUsername}\AppData\Local\Microsoft\MSBuild\v4.0

Alternatively you can edit the default property sheets and use these by default. I wouldn't advice it though as they provide a fallback option in case you mess up. So make backups first if editing default files.

참고URL : https://stackoverflow.com/questions/6386098/visual-studio-can-i-copy-a-projects-properties-to-use-in-another-project

반응형