Microsoft Visual Studio 工程属性表props/vsprops创建与使用
props/vsprops:工程属性表文件(project property sheet)
后者为vs2008的,前者为vs2010及以后版本的,其主要包含工程属性配置相关,可以单独提取出来供不同工程项目公共使用,此外不同项目还可以追加、修改该继承(加载)的属性表,其他引用了该公共属性表的工程不受到影响;此属性表文件可以节省配置时间开销、减少配置错误率,减少工程的重复设置,最终只要设置一次就可以了,尤其是当解决方案下有很多的工程需要修改配置时,其效果显而易见。
创建工程属性表:
无论是vsprops或props,创建时可通过以下步骤:
1. 打开菜单栏View(视图)下的Property Manager(属性管理器),此时出现的属性管理器面板属性页;
2. 展开任意一个工程项目,可以看到内部提供了Debug、Release以及相应的Win32和x64位的版本属性,如果要单独对某一种属性添加属性表,可在其上右键选择添加新项目属性表,并设置属性表名称、位置等;
3. 双击该创建的属性表,便可编辑该属性表的工程设置;可根据需要设置,如输入输出、编译器相关、链接器相关、清单工具、库管理以及事件、自定义生成工具等,此类设置与普通工程的属性配置类似;
4. 此后,保存该配置的属性表即可。
使用工程属性表:
操作类似于创建过程;
1. 打开菜单栏View(视图)下的Property Manager(属性管理器),此时出现的属性管理器面板属性页;
2. 展开需要添加属性表的工程项目,并对需要添加属性的Debug、Release以及相应的Win32和x64位的版本属性中,右键添加现有属性表,将之前创建的属性表添加进去即可。
重定义自己的工程属性:
在添加了该属性表后,可根据需要修改项目工程属性,如增加、修改、删除等操作(对原添加的属性表无影响),若直接修改添加的属性表也可以,不过若该属性表为其他工程项目共享的(文件位置),则会影响其他工程
的属性表配置的,故一般情况下若某工程特殊需要,则只需要修改当前工程属性即可而不是属性表。
props/vsprops异同点:
相同点:均为属性表文件,内部为工程属性配置相关信息,可以节省配置时间开销、减少配置错误率,减少工程的重复设置,只设置一次即可;
不同点:当添加前者时,属性表的信息被直接写入了工程属性种,后者却未写入工程属性,并且添加属性表后的工程属性“常规”下会有“继承项目属性表”项,内容即为该添加的属性表路径;
此外后者若修改工程属性后可能会出现重新加载工程文件时工程属性配置信息丢失或异常的可能性(有待验证,之前有出现过此类状况);而前者不会出现此类问题。
小结:
虽然props/vsprops属性表可以减少重复配置,减少配置出错,不过基本上在不同大的项目中解决方案、工程配置还是有很大的不同的,优势暂时不是很大,但对同一解决方案下还是很可观的;
当然可以考虑配置通用的、泛型一点的属性表,以实现真正的公用的目的。
最后就是不同VS版本转换、升级产生的问题,低版本可直接将自动vsprops转化为props格式,不过不同版本转化后可能出现某些不兼容的情况;这也是不同VS IDE版本下实现移植可能出现的各种问题之一。
Microsoft Visual Studio 工程属性表props/vsprops创建与使用的更多相关文章
- Microsoft Visual Studio 文件识别及其用途简述
Microsoft Visual Studio IDE开发工具集,目前已推出多个不同版本,从之前的VC4.0到现在的VS2015,各个版本都会或多或少的功能或性能上的修改.提升,具体的改进地方可去官网 ...
- Microsoft Visual Studio | VS打开解决方案时加载失败,或者出现错误提示
Microsoft Visual Studio | VS打开解决方案时加载失败,或者出现错误提示 1.加载失败并且输出状态栏也没什么错误提示的话,往往是因为一个低版本VS2010.VS2012等打开了 ...
- Microsoft Visual Studio PDB文件相关事宜
Microsoft Visual Studio PDB:调试的符号文件,程序数据库 (PDB) 文件保存着调试和项目状态信息,使用这些信息可以对程序的调试配置: 当以 /ZI 或 /Zi(用于 C/C ...
- Microsoft Visual Studio 2010 遇到了异常,可能是由某个扩展导致的。 转载
问题: 今天打开好久没用的Microsoft Visual Studio 2010 ,刚才创建了一个C++工程,错误就出现了. 只要在VS2010源码编辑器中输入一个字符,它就报错 ":Mi ...
- 通过反射实现Microsoft Visual Studio International Pack 1.0 SR1里面的两个类
这两天打算实现拼音和简繁转换的方法, 发现Microsoft Visual Studio International Pack 1.0 SR1 提供了 . 下载地址 但是基于某些原因, 一来下载 ...
- Microsoft Visual Studio 2010下log4cplus的安装,集成,测试
原文:http://blog.csdn.net/eclipser1987/article/details/6904301 log4cplus是C++编写的开源的日志系统,功能非常全面,用到自己开发的工 ...
- VS2017 winform 打包 安装(使用 Microsoft Visual Studio 2017 Installer Project)
Microsoft Visual Studio 2017 Installer Projects SkyRiN发表于Coding+订阅 253 助力数字生态,云产品优惠大促 腾讯云促销,1核1G 99元 ...
- AO安装需要Microsoft Visual Studio 2013?
从接触ArcGIS9.2到 10.4,在不断升级的 过程中,既给我们带来了很多惊喜,也带来一些麻烦,因为ArcGIS版本不兼容.出于体验,安装了ArcGIS Desktop10.4,AO也得升到10. ...
- 安装了SQL2005再安装SQL 2008R2,提示此计算机上安装了 Microsoft Visual Studio 2008 的早期版本和检查是否安装了 SQL Server 2005 Express 工具的解决方案
工作电脑上安装了SQL 2005, 但是客户电脑上安装的是SQL 2008R2,有时候连接他们的库调试没法连接,很不方便.然后又安装了个SQL2008 R2,期间遇到这两个问题,网上搜索了一下收到了解 ...
随机推荐
- jquery toastr弹窗的代码和使用
<link href="toastr.css" rel="stylesheet" type="text/css" /> < ...
- openstack资料相关
https://github.com/int32bit/openstack-workflow #openstack各种时序图 http://docs.openstack.org/developer/ ...
- Window系统性能获取帮助类
前言: 这个是获取Windows系统的一些性能的帮助类,其中有:系统内存.硬盘.CPU.网络(个人测试还是比较准的).Ping.单个进程的内存.Cpu.网络(不准). 最初在这个的时候在各种搜索 ...
- npm 发布到远程资源库
一.npm 发布到远程资源库 1.创建package.json Package.json 属性说明 name - 包名. version - 包的版本号. description - 包的描述. ho ...
- PHP数组函数--array_filter
(PHP 4 >= 4.0.6, PHP 5, PHP 7) array_filter - 用回调函数过滤数组中的单元 (PHP 4 >= 4.0.6, PHP 5, PHP 7) arr ...
- qq空间等闪动的文字怎么做?
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- beaglebone black 固定IP上网(ubuntu16.04,console)
今天把beaglebone black搞了下,让能通过网线上网.需要修改一些文件.刷的是ubuntu16.04系统,没有界面.不过资源占用很少,顺便说一下.系统下的vi不好用,没有安装vim. 下面的 ...
- Android源代码查看途径
作为一个android coder,多阅读android源码对提高android开发水平是很有帮助的,那么我们可以通过哪些途径查看android源码呢 1.如果你能够FQ的话可以去android官网查 ...
- Java EE 经验
环境配置 GlassFish Error 1 Exception while loading the app : CDI deployment failure:Error loading class ...
- 分页查询和分页缓存查询,List<Map<String, Object>>遍历和Map遍历
分页查询 String sql = "返回所有符合条件记录的待分页SQL语句"; int start = (page - 1) * limit + 1; int end = pag ...