VS项目属性配置总结

以下是针对VS2013下的VC++项目:

Debug和Release说明:

Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。 
     Debug 和 Release 并没有本质的界限,他们只是一组编译选项的集合。

VS的目录结构:

  VS采用解决方案+项目的结构,一个解决方案可以包含多个项目。

  每个解决方案(比如Solution)都会有个目录Solution,里面包含解决方案配置文件(Solution.sln和Solution.sdf)和输出文件(Debug或者Release)。

  在该解决方案下新建项目Pro1,就会在Solution目录下新建一个Pro1的文件夹,Pro1文件夹下包含项目配置文件(Pro1.vcxproj)、中间文件(Debug或Release),同时所有.cpp和.h文件都会在该文件夹下面。

  由上面叙述可以总结出,管理器(解决方案或项目)都会对应一个总的文件夹,这个管理器文件夹下存放本管理器的配置文件以及子管理器。另外,默认情况下,项目属性设置的目录起点为项目配置文件所在位置,实际上就是项目头文件和源文件所在位置。

  vs中建立默认的C#项目和建立默认的C++项目生成的目录结构是不一样的。如果是C#项目,则解决方案总文件夹下就只包含解决方案配置文件sln和一个项目总文件夹(共两个东东),而项目总文件夹下包含c#源文件、项目配置文件proj、一个Properties属性文件夹、一个obj文件夹和一个bin文件夹,其中obj和bin文件夹下都包含debug和release两个文件夹。obj文件夹下存放中间编译结果(扩展名更加项目类型而不同),而bin文件夹下存放最终生成的结果(扩展名一般为exe或dll)。

  如果是C++项目,则解决方案总文件夹下就只包含解决方案配置文件sln和一个项目总文件夹和一个Debug文件夹以及一个Release文件夹(共四个东东,其中Debug和Release文件夹中存放最终生成的结果exe或dll,要注意如果不使用Release生成,则不存在Release文件夹),而项目总文件夹下包含C++源文件头文件、项目配置文件和一个Debug文件夹以及一个Release文件夹(一定要注意,此处的Debug和Release文件夹仅仅存放中间编译结果obj,不存放exe和dll之类的东西。如果不使用Release编译,则没有对应的Release文件夹)。

VS的项目属性:

  默认“常规“栏目中,“输出目录”为$(SolutionDir)$(ConfigurationName):调试时会在解决方案文件夹下建立一个Debug(ConfigurationName的值为Debug或Release)文件夹。该选项决定宏$(OutDir)的值和中间生成的链接器用的如xx.ilk和xx.pdb文件的输出位置。

  $(ConfigurationName)表示工程的宏,可以在连接器-》输入-》附加依赖项中查看和修改(不建议)所有宏的具体值,如:$(SolutionDir)为解决方案的目录。

  默认“链接器”栏目下的“常规”选项下的“输出文件”选项为$(OutDir)$(TargetName)$(TargetExt)。其中$(OutDir)由常规-》输出目录决定,$(TargetName)由常规-》目标文件名决定,$(TargetExt)由常规-》目标文件后缀决定。该选型决定最终输出的exe文件的位置。

  如果常规-》目标文件名和常规-》目标文件后缀没有决定$(TargetName)$(TargetExt)的值,那么“链接器”栏目下的“常规”必须显示确定输出exe文件的文件名和后缀,然后启动调试生成exe后,根绝exe文件反向确定$(TargetName)$(TargetExt)的值。

  总结:默认情况下“输出目录”和“输出文件”两个属性对应的目录是一样的,这样用着方便(当然,输出文件的值在输出目录的值的基础上还包含有exe文件名)。如果两个不一样,则中间生成的链接器用的如xx.ilk和xx.pdb文件等在输出目录,而最终生成的xx.exe文件在“输出文件”属性设置的目录中。

  “调试”栏目中的“工作目录”项,这个属性默认情况下是空的,但表示工作目录是工程目录,也就是工程配置文件ssyy.vcproj所在目录。“工作目录”属性作用是程序通过VS运行后唯一识别的默认目录,即工作后只认识这个目录,进行文件的读写等操作都是对这个目录而言。注意:vs中工作目录的设置是给调试用的,也即你启动调试后,启动一个新进程,自动把这个新进程的工作目录设置为vs项目属性中的工作目录,然后新进程启动对应的exe程序。但是如果不使用vs的调试启动exe,而是直接双击exe文件启动一个新进程时,会自动把这个新进程的工作目录设置为exe文件所在的目录,这是和vs启动调试不同的地方。所以如果发布的时候不把工作目录内的东西拷到exe所在的目录内,就会运行出错,因为此时工作目录不再是vs中设置的了,而是exe文件所在的目录。

  “调试”栏目中的“命令(Command)”属性项,【这个属性表示调试器要启动的exe文件的全名】,包括路径名,默认为$(TargetPath),而TargetPath就表示目标输出文件的全路径名,所以一般情况下它代表的值就等于“输出文件”属性代表的值。

  “链接器”栏目下的“输入”选项下的“附加依赖项”项。此项是设置程序链接时使用的静态库。相当于链接已经编译好了的“代码”。由此我们可以简单的认为这些库就相当于我们自己写的.cpp文件,只不过这些库是编译好了的.cpp而已。

  另外:VC++这个选项下面的相关目录表示VS所包含的C++的库的位置和信息。

部分参考:http://blog.csdn.net/yyhero1/article/details/19272637

时间: 2024-10-27 18:25:08

VS项目属性配置总结的相关文章

VS项目属性配置实验过程

一.实验背景 cocos2d-x已经发展的相对完善了,从项目的创建.编译.运行到最后的打包都有相应的便捷工具,开发者只需要关注自己的游戏逻辑代码即可,这一点很赞,可是傻瓜式的编程,让我至今还只停留在使用vs建个空项目做个小demo的阶段,我根本不知道cocos2d-x项目究竟是如何组织的,那些项目与项目之间的关系,那些库文件的引用,那些属性的配置,那些路径设置,那些宏定义究竟是在哪里,为什么会出现两个窗口,一大片属性究竟是什么意思,,所以很有必要研究一下.现在把实验过程同大家交流一下,有什么说的

Spring Boot项目属性配置

接着上面的入门教程,我们来学习下Spring Boot的项目属性配置. 1.配置项目内置属性 属性配置主要是在application.properties文件里配置的(编写时有自动提示)这里我们将server的端口变为8888,路径加上HelloWorld: 在DeomApplication.java的页面时点击运行按钮,打开浏览器输入:http://localhost:8888/HelloWorld/hello 此时,控制台的输出信息也可以看到端口变成8888了: 之前的url已无效: 更改后

【转】 vs2010项目属性配置

vs2010使用方案管理项目,一个解决方案下可包含多个项目. 默认情况下,项目属性的设置的目录起点为项目配置文件所在的位置,实际上就是项目头文件和源文件所在的位置. vs2010中默认建立C++项目,则解决方案总目录下包含一个sln和一个项目文件夹,在vs2010编译器中生成debug和release解决方案后,总目录下还会生成对应的debug和release目录,存放最终生成的exe或dll文件,同时也会在项目文件夹下生成debug和release目录(存放的是中间编译文件obj). 下面结合

spring boot 项目属性配置

一.系统配置文件 1.application.properties是新建springboot项目后默认得配置文件 配置的示例如下 server.port=8080 server.context-path=/girl 2.推荐使用application.yml的方式 配置的示例如下 server: port: 8082 context-path: /girl 二.YAML YAML 语言教程 三.实际应用 [email protected] 的用法 application.yml server:

SpringBoot项目属性配置

application.properties和application.yml进行配置 application.yml -- 比较方便和直观,不用写全 server: port: 8080 context-path: /sboot application.properties -- 不太直观,比较老的配置文件会使用这个 server.port = 8080 server.context-path= /sboot 常用注解 @Value : 获取properties\yml文件中的配置值,简化了读取

SpringBoot第二节:项目属性配置

1,resource-application.xxxx,配置端口和访问前缀 server.port=8081server.context-path=/girl 配置/girl后,/hello要加上/girl前缀(/girl/hello)2,resource文件夹下,建立application.yml,语法更简洁server: port: 8081 context-path: /girl  

微软ASP.NET站点部署指南(4):配置项目属性

1.  综述 有些部署设置可以在项目属性里设置的,并且保持到项目文件里(.csproj或.vbproj). 大多数情况下,你都可以在Visual Studio 选择项目属性Project Properties,在属性窗口里设置这些参数.该章节将告诉你如何设置这些参数. 2.  项目属性窗口里配置部署参数 影响项目部署的设置参数可以在项目属性(Project Properties)窗口的Package/Publish 选项卡里设置.可以对不同的build配置设置不同的参数值,本章节将指导你查看这些

springboot项目接入配置中心,实现@ConfigurationProperties的bean属性刷新方案

前言 配置中心,通过key=value的形式存储环境变量.配置中心的属性做了修改,项目中可以通过配置中心的依赖(sdk)立即感知到.需要做的就是如何在属性发生变化时,改变带有@ConfigurationProperties的bean的相关属性. 配置中心 在读配置中心源码的时候发现,里面维护了一个Environment,以及ZookeeperPropertySource.当配置中心属性发生变化的时候,清空ZookeeperPropertySource,并放入最新的属性值. public clas

(C#)一个项目的配置和增删改查

一.windows窗体项目环境配置步骤 1.文件—>新建—>项目—>windows—>修改文件名/路径—>确定 2.右键添加sqlhelper.cs,再添加引用(.net):System.Configuration 3.右键添加—>新建项—>App.config(修改文件中数据库名.文件名) 4.在代码中添加using System.Data.SqlClient 二.添加DataGridView时,需要加bindingsource(绑定源) //从数据库中读取数据