https://www.cnblogs.com/zuibunan/p/3843459.html

下面的文章也有介绍

https://blog.csdn.net/lp310018931/article/details/47991759

https://www.cnblogs.com/ljy339/p/9808482.html

3rd 目录下需要手动创建

bin目录下的目录需要手动创建

命令 不要配置 md $(SolutionDir)..\bin\$(ConfigurationName)

配置属性 --> 常规 --> 中间目录: $(SolutionDir)..\temp\compile\$(ConfigurationName) 修改ConfigurationName为Configuration
配置属性 --> 常规 --> 输出目录: $(SolutionDir)..\temp\link\$(ConfigurationName)修改ConfigurationName为Configuration
配置属性 --> 调试 --> 命令: $(SolutionDir)..\bin\$(ConfigurationName)\$(TargetFileName) 修改ConfigurationName为Configuration
配置属性 --> 调试 --> 工作目录: $(SolutionDir)..\bin\$(ConfigurationName)\ 修改ConfigurationName为Configuration
 
涉及到的配置:
项目编译时使用的中间目录;
项目链接的输出目录;
项目编译结束后,拷贝生成的 dll 和 lib 到指定目录;
项目编译结束后,拷贝需要的 dll 到输出目录;
设置项目的工作目录;
设置调试时执行的 exe 和工作目录; 配置时使用到的一些宏:
ConfigurationName 配置名字,通常是Debug或者Release
IntDir 编译器使用的中间目录,产出obj文件
OutDir 链接器使用的输出目录
ProjectDir 项目目录
ProjectName 项目名字
SolutionDir 解决方案目录
TargetDir 目标输出文件所在的目录
TargetExt 目标输出的扩展名
TargetFileName 目标输出文件名,包括扩展名
TargetName 目标输出名,不包括扩展名
TargetPath 目标输出文件的全路径名 下面以 Sticker 为例展示目录结构设置的过程:
Sticker 目录结构:
Sticker
+-- 3rd (第三方库)
| +-- dll
| | +-- debug
| | +-- release
| +-- lib
| | +-- debug
| | +-- release
| +-- include
|
+-- src (源码)
| +-- Sticker
| | +-- Sticker 项目的代码
| +-- StickerLibrary
| | +-- StickerLibrary 项目的代码
| +-- Sticker.sln
|
+-- xar (脚本)
| +-- Sticker
| +-- ...
|
+-- doc (文档)
|
+-- bin (可执行文件)
| +-- debug
| +-- release
|
+-- temp (中间目录)
+-- compile
| +-- debug
| +-- release
+-- link
+-- debug
+-- release 1. 创建文件夹 Sticker\src
2. 创建一个空的解决方案 Sticker.sln ,放入 Sticker\src 中
3. 创建项目 Sticker
4. 属性 --> 配置 设定为“所有配置”,这样可以同时设定 debug\release 下的配置
5. 配置属性 --> 常规 --> 中间目录: $(SolutionDir)..\temp\compile\$(ConfigurationName)
6. 配置属性 --> 常规 --> 输出目录: $(SolutionDir)..\temp\link\$(ConfigurationName)
7. 配置属性 --> C/C++ --> 常规 --> 附加包含目录: "$(SolutionDir)..\3rd\include"
8. 配置属性 --> 链接器 --> 常规 --> 附加库目录: "$(SolutionDir)..\3rd\lib\$(ConfigurationName)"
9. 配置属性 --> 链接器 --> 输入 --> 附加依赖项: xxx1.lib xxx2.lib xxx3.lib
10. 配置属性 --> 生成事件 --> 生成后事件 --> 命令行:
md $(SolutionDir)..\bin\$(ConfigurationName)
copy $(TargetPath) $(SolutionDir)..\bin\$(ConfigurationName)
copy $(SolutionDir)..\3rd\dll\$(ConfigurationName) $(SolutionDir)..\bin\$(ConfigurationName)
11. 配置属性 --> 调试 --> 命令: $(SolutionDir)..\bin\$(ConfigurationName)\$(TargetFileName)
12. 配置属性 --> 调试 --> 工作目录: $(SolutionDir)..\bin\$(ConfigurationName)\

  

转: VS 解决方案目录结构设置的更多相关文章

  1. VS下的解决方案目录结构设置和管理

    转载:http://blog.csdn.net/pl20140910/article/details/52074165 为了方便管理自己写的代码,也为了日后工作能方便的查找之前做过相同的代码,仿照某源 ...

  2. VS 解决方案目录结构设置

    涉及到的配置: 项目编译时使用的中间目录: 项目链接的输出目录: 项目编译结束后,拷贝生成的 dll 和 lib 到指定目录: 项目编译结束后,拷贝需要的 dll 到输出目录: 设置项目的工作目录: ...

  3. [转]Vs解决方案的目录结构设置和管理

    原文地址:[转]Vs解决方案的目录结构设置和管理 作者:大明   以下内容为“原创”+“转载” 首先,解决方案和项目文件夹包含关系(c++项目): VS解决方案和各个项目文件夹以及解决方案和各个项目对 ...

  4. Visual C++ 设置适合自己的解决方案目录结构

    Visual C++ 使用解决方案来管理项目,项目之间还可能有依赖关系,设置适合自己的解决方案目录结构,便于代码的管理.程序的发布. 下面开始一个虚拟解决方案设计:         假设此解决方案有应 ...

  5. Vs 2008 解决方案的目录结构设置和管理(转)

    http://blog.csdn.net/lcj_cjfykx/article/details/8632459 MS的这个IDE,实在庞杂得恐怖.从大学开始,我就一直用VC的各个版本写程序至今,细细想 ...

  6. VC 2005 解决方案的目录结构设置和管理

    VC 2005 解决方案的目录结构设置和管理   Roger (roger2yi@gmail.com)   一个中等规模的解决方案通常都会包含多个项目,其中一些项目产出静态库,一些产出动态库,一些用于 ...

  7. ECMALL目录结构设置与数据库表

    [Ecmall]ECMALL目录结构设置与数据库表   最近在做ecmall的开发,ecmall在开源方面还有待进步啊,官方没有提供开发文档,也没有关于系统架构组织的贡献,使用者都要自己从0开始,官方 ...

  8. VS解决方案的目录结构设置和管理

    一个中等规模的解决方案通常都会包含多个项目,其中一些项目产出静态库,一些产出动态库,一些用于单元测试,还有的产出最终的应用程序执行档.除此以外,根据项目的需求,还会使用一些第三方的库.   所以为解决 ...

  9. Visual Studio解决方案的目录结构设置和管理

    摘至:http://blog.csdn.net/lp310018931/article/details/47991759 首先,解决方案和项目文件夹包含关系(c++项目): VS解决方案和各个项目文件 ...

随机推荐

  1. ORB-SLAM2 论文&代码学习 —— 概览

    转载请注明出处,谢谢 原创作者:MingruiYU 原创链接:https://www.cnblogs.com/MingruiYu/p/12347171.html *** 本文要点: ORB-SLAM2 ...

  2. MS SqlServer 的日期格式化函数 Convert

    MS SqlServer 的日期格式化函数:Convert(data_type[(length)], expression [, style])参数:data_type[(length)]代表转换的数 ...

  3. saltstack集合

    saltstack集合 saltstack(一):   saltstack简介 saltstack(二):   saltstack安装及配置 saltstack(三):   saltstack远程执行 ...

  4. k8s系列---Worker节点扩容

    其他有关内容 安装:参考https://www.cnblogs.com/dribs/p/9082458.html 集群故障重置:参考https://www.cnblogs.com/dribs/p/10 ...

  5. Keepalived 工作原理和配置说明

    keepalived是什么: 简单来说 Keepalived 的功能功能1.使用VRRP协议 来控制一组高可用(HA) 主备系统,一台master工作,一台slave热备:master失效后slave ...

  6. 《python可以这样学》第一章

    一.Python基础 查看Python版本 Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AM ...

  7. WARNING: The host '$hostname' could not be looked up with resolveip. (转)

    环境介绍:CentOS6.X MySQL版本:5.5.X以上 执行scripts/mysql_install_db脚本时,抛出一条Warning,主机名和IP地址无法解析: The host '$ho ...

  8. new function 到底做了什么?如何自己实现new function

    前言 这是继function 与 Function 关系后写下的. 写这个起源于,我无聊的时候看到一道题目: 'foo' == new function() { var temp=String('fo ...

  9. 面型对象和UML类图

    面向对象 why? 1.程序执行:顺序,判断,循环,----结构化 2.面向对象----数据结构化 3.面向计算机,结构化的才是最简单的 4.变成应该 简单&抽象 一个基本的类 class P ...

  10. Cesium案例解析(五)——3DTilesPhotogrammetry摄影测量3DTiles数据

    目录 1. 概述 2. 案例 3. 结果 1. 概述 3D Tiles是用于传输和渲染大规模3D地理空间数据的格式,例如摄影测量,3D建筑,BIM / CAD,实例化特征和点云等.与常规的模型文件格式 ...