Visual studio vsprops中的CharacterType/ConfigurationType
我一直在使用VisualStudio的属性表来构建代码,我有一个有用的表层次结构来控制构建设置,而不是将它们放在vcproj文件中。这是伟大的,除了一件事。我似乎无法在项目默认值部分设置属性,例如CharacterType和ConfigurationType 我尝试在vsprops中使用VCConfiguration工具,但没有成功:Visual studio vsprops中的CharacterType/ConfigurationType,visual-studio,vsprops,Visual Studio,Vsprops,我一直在使用VisualStudio的属性表来构建代码,我有一个有用的表层次结构来控制构建设置,而不是将它们放在vcproj文件中。这是伟大的,除了一件事。我似乎无法在项目默认值部分设置属性,例如CharacterType和ConfigurationType 我尝试在vsprops中使用VCConfiguration工具,但没有成功: <Tool Name="VCConfiguration" ConfigurationType="4" /> 谁能告诉我这是如何实
<Tool
Name="VCConfiguration"
ConfigurationType="4"
/>
谁能告诉我这是如何实现的吗?这是因为项目默认设置更改了一系列设置,而不仅仅是一个。CharacterType比较简单,此.vsprops文件将其更改为Unicode:
<?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改变了很多。最好是从一个普通的项目模板开始。保存.vcproj文件。更改ConfigurationType并再次保存。在两个.vcproj文件上运行一个diff,查看应该在项目属性表中包括哪些设置。然后,您还可以很容易地看到ConfigurationType元素实际上位于
部分。感谢您的回答,我理解这一点,但是如果vsprops中工具标记外的属性出现在项目默认值部分内,则会忽略这些属性。中间目录和输出目录可以这样设置:在上面的示例中,输出目录起作用,但直接或间接继承属性页的所有项目都会忽略配置类型。@Cthutu:是的,您是对的,项目默认设置没有选择的选项“从父项或项目默认值继承”。afaik没有解决方法。不过,重要的是实际设置,它们控制项目的生成方式,而不是项目默认值。