概念:Project Property 和 Property Sheet。

  • Project Property:项目属性,是你当前项目的属性配制,保存在你工程的配制文件中,rojectName.vcxproj中。
  • Property Sheet:属性表,可用于多个工程的属性配制,可以自己创建添加属性配制,也可以使用系统默认的属性表,保存在.props为拓展名的文件中。而属性表(Property Sheet)的添加和管理就是在Property Manager中进行设置的。

默认属性表含义 以Debug | x64的配置为例,

  1. Microsoft.Cpp.x64.user:
    系统默认的属性表,全路径为,
    C:\Users\horswing\AppData\Local\Microsoft\MSBuild\v4.0\Microsoft.Cpp.x64.user.props
    项目创建后,默认有这个属性表。双击可以修改(效果与solution explorer 项目名上右键 -> property一致),右键选则remove和移除。
  2. Application:
    表示这个项目生成的是一个“应用程序”(不是DLL或LIB)。在Property Manger里,这项是不能改的,所以你发现双击后,出现的页面是灰色的,右键也只有property选项。
    在哪里改呢?solution explorer里,项目属性 -> gerneral -> Project Defaults -> Configuration Type.
  3. Unicode Support和Core Windows Libraries
    和Application项一样,这两项也是“只能看不能改的”,要改,分别在,项目属性 -> gerneral -> Project Defaults 里的Character Set和Use of MFC修改。

属性的继承关系

项目的属性是分层的。 每一层会继承前一层的值,但是继承的值可以通过设置属性来显式地重写。 下面是基本的继承关系(继承树):

  1. 来自 MSBuild CPP工具集的默认设置(..\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.Cpp.Default.props,它将被 ProjectName.vcxproj文件导入)。
  2. Property sheets(属性表),也就是Property Manager中设置的属性表。
  3. 工程文件ProjectName.vcxproj .(可以重写默认值和property sheet 中的设置)。
  4. 每一项的元数据。

题外话,由此我们发现有三个地方可以设置项目属性:

  1. Property Manager里的属性表(可以在默认的属性表上修改,也可以自己新建一个);
  2. solution explorer里,项目属性;
  3. 在代码里更改:例如,宏定义,附加库等。

注意:设置有冲突,3覆盖2, 2覆盖1。


参考文章:https://msdn.microsoft.com/en-us/library/669zx6zc.aspx

VS Project Property Manage的更多相关文章

  1. error MSB8031: Building an MFC project for a non-Unicode character set is deprecated. You must change the project property to Unicode or download an additional library. See http://go.microsoft.co

    Win10,也重新装了免费版的Visual Studio 2013 y,写MFC程序时候发现这样的提示: error MSB8031: Building an MFC project for a no ...

  2. Cannot detect Web Project version. Please specify version of Web Project through Maven project property <webVersion>. E.g.: <properties> <webVersion>3.0</webVersion> </properties>

    鼠标放在问题出会出现set web project version to 3.0和set web project version to 3.1两个选项 随便选一个版本就好了

  3. multiTarget within one project pods manage

    step1:file->new->target create 1 targetstep2:change Podfile and update podstep3:check new targ ...

  4. A Guide to Creating a Quality Project Schedule

    Successful projects start with a good quality project schedule. Creating a schedule is one of the fi ...

  5. Visual Studio warning MSB3270:There was a mismatch between the processor architecture of the project being built "MSIL"

    Problem: There was a mismatch between the processor architecture of the project being built "MS ...

  6. [SoapUI] Property Expansion in soapUI

    1. Property Expansion in soapUI SoapUI provides a common syntax to dynamically insert ("expand& ...

  7. error MSB8031: Building an MFC project for a non-Unicode character set is deprecated

    vs2013编译VC++源码,错误: error MSB8031: Building an MFC project for a non-Unicode character set is depreca ...

  8. MFC project for a non-Unicode character set is deprecated

    error MSB8031: Building an MFC project for a non-Unicode character set is deprecated. You must chang ...

  9. 【VS开发】VS2013多字节工程问题uilding an MFC project for a non-Unicode character set is deprecated

    VS2013多字节工程问题 使用VS2013编译旧版VC++程序时,提示Building an MFC project for a non-Unicode character set is depre ...

随机推荐

  1. 分布式事务解决方案汇总:2PC、3PC、消息中间件、TCC、状态机+重试+幂等(转)

    数据一致性问题非常多样,下面举一些常见例子.比如在更新数据的时候,先更新了数据库,后更新了缓存,一旦缓存更新失败,此时数据库和缓存数据会不一致.反过来,如果先更新缓存,再更新数据库,一旦缓存更新成功, ...

  2. spring boot 枚举使用的坑3

    上一篇说到spring boot 使用jackson在枚举enum序列化和反序列化的问题, 再来说说在JPA中实体entity使用枚举的问题. 还是这个枚举: @Getter @AllArgsCons ...

  3. JCTF 2014 小菜两碟

    测试文件:https://static2.ichunqiu.com/icq/resources/fileupload//CTF/JCTF2014/re200 参考文章:https://blog.csd ...

  4. 锋利的JS解读——认识JQuery(一)

    一.jQuery的发展 随着javascript的不断发展,延伸出了多种JS程序库,当前比较流行的js库有:1)Prototype  成型较早,从整体上对面向对象的编程思想把握的不是很到位. 2)Do ...

  5. Apache 的 httpd.conf 配置文件

    http.conf 是 Apache 的配置文件,Apache 的常见配置主要是通过修该文件实现的,修改之后需要 重启 Apache 服务生效. Httpd.conf #Apache 安装目录 Ser ...

  6. makeinfo - 翻译 Texinfo 文档

    SYNOPSIS 总览 makeinfo [OPTION]... TEXINFO-FILE... DESCRIPTION 描述 将 Texinfo 源文档翻译为各种其他格式,默认是可以用 Emacs ...

  7. rest_framework框架的分页

    class MyPageNumberPagination(PageNumberPagination): page_size = 1 page_query_param = 'page' page_siz ...

  8. Codeforces 955 LR询问 多次幂处理

    A 模拟题 #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) ...

  9. Vscode窗口被覆盖

    用Vscode用的好好的,突然就发现窗口被覆盖了 解决办法如下:1.ctrl+shift+p 快捷键打开如下界面, 2.接着在搜索框中输入settings,点击首先项:打开设置(json) 3.再se ...

  10. Spring Boot日志处理

    2.4 日志处理 2.4.1 记录日志内容 请求url 访问者ip 调用方法classMethod 参数args 返回内容 2.4.2 新建包aspect,新建日志切面处理类 package com. ...