首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > VSTS >

Vs 2008 解决方案的索引结构设置和管理

2012-08-29 
Vs 2008 解决方案的目录结构设置和管理?1.?GMA是解决方案目录2.?PureMilk和ChocolateMilk是项目目录3.?Lib

Vs 2008 解决方案的目录结构设置和管理

?

1.?GMA是解决方案目录2.?PureMilk和ChocolateMilk是项目目录3.?Lib目录用于存放导入库或者静态库(包括第三方库和自己的项目)4.?Include用于存放第三方库的头文件5.?Bin目录存放所有动态链接库和执行档,包括自己的产出和第三方库,区分Release和Debug两个版本。另外,程序运行过程中需要外部的数据文件和启动时需要的配置文件等等都可放于该目录6.?Temp用于存放临时生成文件,其中Compile存放编译器编译时生成的obj文件,Link存放链接器的输出文件。上面目录结构清晰,一面了然,当我们的程序需要制作安装包或者要打包源码发布的时候,它能够使得我们生活变得更容易^_^制作安装包时我们只需将“/GMA/Bin/Release/”目录下的所有文件打包。发布和转移源码的时候我们可以打包除了Temp目录以外“/GMA/”下面的所有文件和目录(如果不需要执行档,也可不包括Bin)。我们的需求是明确的,可是VC 2008并不会自动为我们做好上面所有的事情。不过我们并不需要编写复杂的编译脚本(makefile),只需要简单的修改项目的缺省设置即可。我们需要VC为我们做的事情包括:1.使用“/GMA/Temp/Compile/”作为项目编译时使用的中间目录2.使用“/GMA/Temp/Link/”作为项目链接的输出目录3.当项目是应用程序时,在构建结束后拷贝执行文件到“/GMA/Bin/Release/”或“/GMA/Bin/Debug/”,当项目是动态链接库时,除了拷贝dll到Bin,还拷贝导入库到“/GMA/Lib/”4.当项目是应用程序时,调试时运行“/GMA/Bin/Debug/”或“/GMA/Bin/Release/”下面的执行文件,并以“/GMA/Bin/Debug/”或“/GMA/Bin/Release/”为工作目录首先看一下项目设置中可以使用的宏,常用的有:

?

ConfigurationName配置名字,通常是Debug或者ReleaseIntDir编译器使用的中间目录,产出obj文件OutDir链接器使用的输出目录ProjectDir项目目录ProjectName项目名字SolutionDir解决方案目录TargetDir目标输出文件所在的目录TargetExt目标输出的扩展名TargetFileName目标输出文件名,包括扩展名TargetName目标输出名,不包括扩展名TargetPath目标输出文件的全路径名

?

Vs 2008 解决方案的索引结构设置和管理首先来设置ChocolateMilk1.使用“/GMA/Temp/Compile/”作为项目编译时使用的中间目录2.使用“/GMA/Temp/Link/”作为项目链接的输出目录Vs 2008 解决方案的索引结构设置和管理注意高亮的部分,首先将配置改成All Configuration(全部配置),这样可以让我们同时修改Debug和Release的部分;Output Directory(输出目录,链接器)栏位填入:$(SolutionDir)\Temp\Link\$(ProjectName)\$(ConfigurationName)Intermediate Directory(中间目录,编译器)栏位填入:$(SolutionDir)\Temp\Compile\$(ProjectName)\$(ConfigurationName)3.构建结束后拷贝动态链接库到“/GMA/Bin/Release/”或“/GMA/Bin/Debug/”,拷贝导入库到“/GMA/Lib/”我们通常都会在Debug版本的输出库后面加上字母“d”以表示这是Debug版本,在Debug配置下,修改Import Library栏位:Vs 2008 解决方案的索引结构设置和管理VC可以让我们设置构建前后执行的脚本程序,所以为了完成3,我们需要写构建后执行的脚本:Vs 2008 解决方案的索引结构设置和管理在Command Line中填入,Debug配置下:copy $(TargetPath) $(SolutionDir)\Bin\$(ConfigurationName)\;copy $(TargetDir)$(TargetName)d.lib $(SolutionDir)\Lib\;Release配置下:copy $(TargetPath) $(SolutionDir)\Bin\$(ConfigurationName)\;copy $(TargetDir)$(TargetName).lib $(SolutionDir)\Lib\;之所以要分别设置是因为VC没有表示导入库的宏名字 -_-POK,到此为止,你就可以编译ChocolateMilk项目试试是不是一切正常了,不过请确认拷贝的目标目录事先建立好。接下来我们设置应用程序项目PureMilk1.使用“/GMA/Temp/Compile/”作为项目编译时使用的中间目录2.使用“/GMA/Temp/Link/”作为项目链接的输出目录首先将配置改成All Configuration(全部配置),这样可以让我们同时修改Debug和Release的部分;Output Directory(输出目录,链接器)栏位填入:$(SolutionDir)\Temp\Link\$(ProjectName)\$(ConfigurationName)Intermediate Directory(中间目录,编译器)栏位填入:$(SolutionDir)\Temp\Compile\$(ProjectName)\$(ConfigurationName)3.构建结束后拷贝执行文件到“/GMA/Bin/Release/”或“/GMA/Bin/Debug/”在Command Line中填入,All配置下:copy $(TargetPath) $(SolutionDir)\Bin\$(ConfigurationName);4.调试时运行“/GMA/Bin/Debug/”或“/GMA/Bin/Release/”下面的执行文件,并以“/GMA/Bin/Debug/”或“/GMA/Bin/Release/”为工作目录Vs 2008 解决方案的索引结构设置和管理Command栏位填入:$(SolutionDir)\Bin\$(ConfigurationName)\$(TargetFileName)Working Directory栏位填入:$(SolutionDir)\Bin\$(ConfigurationName)\这样就大功告成了,现在你就可以编译该执行程序并进行调试。

热点排行