2010-03-08 2 views
1

저는 Visual Studio의 속성 시트를 사용하여 코드를 작성했으며 빌드 설정을 제어하는 ​​유용한 계층 구조 시트를 vcproj 파일에 포함하지 않았습니다. 이것은 한 가지를 제외하고는 위대합니다. CharacterType 및 ConfigurationType과 같은 Project Defaults 섹션에서 속성을 설정할 수 없습니다. vsprops의 문자 유형/구성 유형

은 내가 vsprops에하지만 아무 소용에 VCConfiguration 도구를 사용하여 시도 :

<Tool 
    Name="VCConfiguration" 
    ConfigurationType="4" 
/> 

사람이 제발 수행하는 방법을 말해 줄래?

답변

3

Project Default 설정은 하나의 설정이 아니라 많은 설정을 변경하기 때문입니다.

<?xml version="1.0"?> 
<VisualStudioPropertySheet 
     ProjectType="Visual C++" 
     Version="8.00" 
     Name="Unicode Support"> 
     <Tool 
       Name="VCCLCompilerTool" 
       PreprocessorDefinitions="_UNICODE;UNICODE"/> 
     <Tool 
       Name="VCResourceCompilerTool" 
       PreprocessorDefinitions="_UNICODE;UNICODE"/> 
</VisualStudioPropertySheet> 

ConfigurationType 그러나 그들 중 많은 변경하십시오 CharacterType이 파일이 유니 코드로 변경 .vsprops, 쉽게 하나입니다. 가장 좋은 방법은 바닐라 프로젝트 템플릿으로 시작하는 것입니다. .vcproj 파일을 저장하십시오. ConfigurationType을 변경하고 다시 저장하십시오. 두 개의 .vcproj 파일에서 diff를 실행하여 프로젝트 속성 시트에 어떤 설정을 포함시켜야하는지 확인하십시오. 그런 다음 ConfigurationType 요소가 실제로 <Configurations/Configuration> 섹션에 있음을 쉽게 알 수 있습니다.

+0

답변 주셔서 감사합니다. 그러나 vsprops의 툴 태그 바깥에있는 속성은 프로젝트 기본값 섹션에 나타나면 무시됩니다. 중급 및 출력 디렉토리는 다음과 같이 설정할 수 있습니다 위의 예에서 출력 디렉터리는 작동하지만 속성 시트를 직접 또는 간접적으로 상속하는 모든 프로젝트에서 구성 유형이 무시됩니다. – Cthutu

+0

@Cthutu : 맞습니다. 프로젝트 기본값 설정에는 "부모 또는 프로젝트 기본값으로부터 상속"을 선택할 수있는 옵션이 없습니다. afaik에 대한 해결 방법은 없습니다. 그래도 실제 설정은 중요하며 프로젝트 기본 설정이 아니라 프로젝트 작성 방법을 제어합니다. –