起名【转】VS项目性质之片段配置起之下结论

 

往什么,咳咳!希腊神话中塞浦路斯出同一各君主为皮格马利翁,善雕刻。他莫喜塞浦路斯的人间女子,决定决不结婚。他于是神奇之技能雕刻了同样所美丽的牙小姐像,在分秒必争之劳作中,皮格马利翁把方方面面底肥力、全部底热忱、全部的爱恋都赋予了当时座雕刻。他如对待自己之老婆那样抚爱她,装扮她,为其于名加拉泰亚,并通往神乞求让它们成自己的婆姨。爱神阿芙洛狄忒被他激动,赐予雕像生命,并叫她们结为夫妻。

先是,解决方案以及种文件夹包含关系(c++项目):

备考:后来形成一个心理学名词——“皮格马利翁效应”:成为一个人只要本着章程对象有执着的求偶精神,便会生艺术感应的代名词。

VS解决方案及顺序品类文件夹和缓解方案以及一一门类相应的安排文件包含关系,假要新建一个类型ssyy,解决方案从名fangan,注意解决方案包括项目,此时转变的极致外层目录为fangan代表全部解决方案的情节都于此文件夹内。在斯fangan文件夹内富含有fangan.sln的解决方案安排文件以及一个ssyy文件夹,ssyy文件夹代表任何ssyy项目之拥有情节都当此文件夹内,这个文件夹内富含ssyy.vcproj的门类安排文件和.h头文件和.cpp源文件。如果在fangan解决方案下重建一个新路名为也ssyy2,则会在fangan文件夹下殊成一个ssyy2文件夹存放ssyy2项目之有所内容。

1865年,作为曾国藩幕府中同样各的专家—夏燮在其著述《中西纪事》记载道:“洋人又会制物为裸妇人,肌肤骸骨耳目齿舌,阴窍无一不具,初折迭如服装,以气吹之,则柔软暖如花,可拥以连片如人道,其巧而丧心如此。”

 

侬们来怀念同一纪念,这员夏燮同志在19世纪目睹此花是啊样子的单呆,口齿生津。

由点叙述可以总结发生,管理器(解决方案或项目)都见面相应一个总的文本夹,这个管理器文件夹下存放本管理器的配备文件和子管理器。比如,解决方案是只管理器,它的文本夹下含有.sln配置文件及子管理器ssyy项目和子管理器ssyy2项目。

但真的把这种玩偶作为制成品并提交工业加工的鼻祖确是被咱会大跌眼镜的人物——希特勒,这员一手策划二战的尽种族主义“雅利安民族主义”者。为啥捏?大家领略战争要出,后勤上为是独严重的死去活来题目,那就算是先满足士兵的吃过用,那生理需求这种隐秘而强劲的需就成为了一个头疼的问题,从古至今,士兵的奸淫行为一直也用官层无法遏制,甚至于必程度上默许,就是盖这个。

此外,默认情况下,项目性质设置的目起点为项目安排文件所在位置,实际上即便是项目头文件及根源文件所在位置。

可是希特勒可免克默许士兵与其他种族的阴发生性关系,因为他如果保证雅利安部族的“血统纯正”。所以他属意自己之属下希姆莱发明一栽而代的生理自慰用品。

加: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文件夹)。

战后,美国人数露丝•汉德勒在德国有时候发现充气小“莉莉”,带回美国,并为那个也模型进行改造。风靡全球的“芭比娃娃”就这么出现了。

有鉴于此,c#品类默认生成的文件目录结构更合理,且输出的exe位于总项目文件夹内,而c++项目默认exe位于解决方案总文件夹下。另外c#再次客观在,C#以Bin目录,在Bin目录下涵debug和release两个目录,而C++不利用Bin目录,直接利用debug和releae两只目录。

史学界一直有只思想——战争推动人类前进,尤其是位革命性的技艺的前进,这太早估计是尼采说之吧,当然,这是一个伟大争议之话题。

 

一时间时间进入了20世纪60年代,越战开于,背靠中国之北越和美国阳越联军大战了将近十年,米国大兵也有性需要,于是白宫的老同志等想到了希特勒的性爱娃娃往事,于是源源不断的充气小送及了越南的林海里。德国民心理想,你们无可知如此窃取我们的知产权啊,美国人数呢非挂德国,生气的德国人充分发挥了他们工业上之民俗优势,哇哇生产,一度占据世界充气GIRL的顶点。

其次,常用色性质与系部署变量关系

天道啪啪啪地进了70年份,不用港,你们都清楚!泥盆国将接前辈的衣钵,正式化世界充气娃娃界的佼佼者。

  如果我们树立一个默认的vc项目ssyy,他的默认“常规“栏目中,“输出目录”为$(SolutionDir)$(ConfigurationName),所以调试时见面于解决方案总文件夹下起一个debug(SolutionDir的价值吗解决方案总文件夹的门道,ConfigurationName的价值吗debug)文件夹,并在是文件夹下生成 ssyy.lik链接器 和ssyy.exe文件 。默认“中间目录”为$(ConfigurationName),所以会见以ssyy项目文件夹下(即ssyy.vcproj的型安排文件所在位置)建立一个debug文件夹,并于拖欠公文夹下生成ssyy.obj二进制文件。默认“链接器”栏目下的“常规”选项下之“输出文件”选项也$(OutDir)\$(ProjectName).exe,其中$(OutDir)就曾以“常规”栏目的“输出目录”选项赋值了。【就此$(OutDir)的价值是当“输出目录”属性被定义之】。

越战时期,日本特派了扳平拔科研人员到南极,长期禁欲让队员苦不堪言,于是泥盆国队员发挥了日本下手能力大的优势,自己研制了性爱娃娃。队员们轮番与是充气娃娃发生了羞羞的转业,画面极致美。

  另外,经过实际测试,发现“输出目录”属性只能从至对$(OutDir)系统变量赋值的意图,和“改变生成的.exe文件存放位置”没其他关系。也就是说,如果“输出目录”中安的$(OutDir)值当C盘,而“输出文件”中安装输出文件之位置也D盘,最终生成的exe文件会当D盘,“输出文件”属性才控制输出exe文件的职务。

日本经济腾飞在70跟80年代,由此,日本之充气小也大肆攻陷世界各地,男人们翘首以盼东洋人的及时雨girl。到了90年代以后,硅胶和PVC材质的阐明被孩童的触感更为自逼真,但手感上还是会见觉得硬的,但是对好年代的口来说,这就照是不可想像的了。

  而$(TargetDir)的价值是于生成exe文件后活动与值为exe文件所在位置。所以可以说,“输出文件”最终决定exe文件所在的职务,也最终决定了$(TargetDir)的值,$(TargetPath)和$(TargetDir)的行为是近似的,此不赘述。

以至二十一世纪下,得益于医用材料的升级换代和不断上升之商海空间,充气娃娃们毕竟迎来了极度接近真人的时。全实体骨骼性爱幼出现了,全身材质结尾逼真型的硅胶,从远方看几可混真,价格为,数万片钱打,贵!

  上面两段落说了如此多,总就是,默认情况下“输出目录”和“输出文件”两单特性对应之目是平的,这样用正在好(当然,输出文件之价当出口目录的值的基本功及还蕴藏有exe文件称)。如果少只无一样,则中生成的链接器用底如xx.ilk和xx.pdb文件等以输出目录,而结尾生成的xx.exe文件于“输出文件”属性设置的目录中。

互联网时代日本还要出有了足以于体温、真人对话、智能反应相当方面被人口奇之模拟性爱伴。

  另外,上面两段落话可以总结发生,当调试程序时,系统变量$(OutDir)的值是长确定的,而$(TargetDir)和$(TargetPath)的价是于exe文件生成后才规定的。也就是说系统变量$(OutDir)的值由VS项目之“输出目录”属性决定,而$(TargetDir)和$(TargetPath)的值由VS项目之“输出文件”属性决定。即设置了VS的“输出目录”属性就相当给安了$(OutDir)的价,“输出目录”是界面及的提醒用于收纳用户输入的布局信息,然后把这个实际的布置信息存入系统内容之变量$(OutDir)中。

在押罢施瓦辛格《第六天》和华金·菲尼克斯《她》的同室等,估计曾观望了更为广泛的充气娃娃前景——虚拟充气小。啧啧啧,世界变化快,你值得等待。

  其它常用之属性还有,“调试”栏目中的“工作目录”项,这个特性默认情况下是空的,但象征工作目录是工程目录,也即是工程安排文件ssyy.vcproj所当目。工作目录表示进行某项操作的目的目录,会趁机OpenFileDialog、SaveFileDialog等目标所确定的目而更改。“工作目录”属性作用是程序运行后唯一识别的默认目录,即工作后只有认得这目录,工作目录者名字描述的虽死像,(可以以所指的lib和dll库文件所在目录设为工作目录,但貌似是管lib放在解决方案下之Lib目录中,把dll放在解决方案下的Bin目录中),如程序运行过程遭到生成一个txt文本文件,如果在创建文件过程被莫指定绝对路径,只指定创建文件之文件称,那么是文件文件默认就见面建立在工作目录中,当然读取一些配备文件也以办事目录中寻找,但如果证明一下,生成的exe文件与办事目录没其他关系,也无见面在工作目录中由此看来,工作目录就是程序运行过程遭到默认读取的目录。对于dll,如果是程序运行前便进内存(有点像静态链接那样),此时dll就足以放入exe所当的履行目录,如果dll是运作中动态加载的一般在工作目录,比如插件就是置身工作目录。即工作目录就运行期间唯一能够分辨的默认目录,工作目录在代码中之所以GetCurrentDirectory之类的函数获取,具体代码间极下面的附1。工作目录和实施目录可以不同,例如一个总人口已在北京市,但他的工作地点不必然当京都,可能于天津。

观这儿,黄小编不由地点开始了淘宝,输入关键词。琳琅满目啊闹无,几千块,上万片的,甚至发四十万的。

对工作目录的增补:vs中工作目录的安是吃调试用之,也不怕你启动调试后,启动一个新过程,自动把这个新进程的做事目录设置为vs项目性质被的行事目录,然后新过程启动相应的exe程序。但是倘若无行使vs的调试启动exe,而是一直双击exe文件启动一个新过程时,会活动将这新进程的行事目录设置为exe文件所在的目,这是暨vs启动调试不同的地方。所以只要发布之时节不将工作目录内的事物拷到exe所当的目外,就会见运行出错,因为这时干活目录不再是vs中装置的了,而是exe文件所在的目录。最后,说一下,vs中默认的vc++工程的工作目录项目的价是拖欠的,代表默认是vs工程所在目录即.vcproj文件所在目录,c#工默认没测试,估计与vc的如出一辙。】

甚至

【同样当调试选项下之同做事目录选项同一级的选项“命令”选项是装,使用调试时,从哪里启动exe文件,因为相似生成的exe放在bin目录下之debug或release目录下,所以命令选项一般也“Bin\$(Configuration)\$(ProjectName).exe”,默认为是以此价,当然可以改变,但这表示调试状态下启动的exe为“命令”选项中安的exe文件,而无是默认的bin目录下之debug或release下的exe文件了。最后说一下,地方所说之“调试”是凭vs下启动exe,包括debug模式及release模式,不要拿调试就知晓也就发生debug模式。】

想念剁手买呢?

“调试”栏目中的“命令(Command)”属性项,【这个特性表示调试器要启动之exe文件之真名】,席卷路径名,默认为$(TargetPath),要TargetPath就象征目标输出文件之全部径名,所以一般情形下其意味着的价就是顶“输出文件”属性代表的价。

也许有重好之选取吧恐怕也,怎么说充气的以怎么逼真也比不过真人啊!况且现在气候十分凉啊,还要充电加热。

“链接器”栏目下之“输入”选项下的“附加依赖项”项。此桩是安装程序链接时以的静态库。相当给链接已编译好了底“代码”。由此我们得以大概的道这些库就相当给我们协调写的.cpp文件,只不过这些库是编译好了之.cpp而一度(这里仅需要库名称即可,搜索路径在另地方设置)。

 

脚举一个几近型例子(vc++例子):(转自:http://blog.163.com/zhang_bo1983/blog/static/16992223020123753334981/)

解决方案和品类:
从今VC6之后VC系列就是采用解决方案(Solution)来取代原先的劳作空间,用于集体和管理几近独相关的品类(Project)。
文章首先演示一个虚拟的化解方案及咱们期待获取的目结构,然后用VC2008的色安装功能来平等步一步上我们的求。
编造解决方案:
该虚拟解决方案名吧GMA,包含一个动态链接库项目ChocolateMilk和一个应用程序项目PureMilk,需要以一个叔正值库log4cxx(Apache
log4j的C++移植版本,用于日志输出)。【注意这例子中ChocolateMilk项目光可怜成一个dll,PureMilk只可怜成一个exe】
log4cxx是以动态库的方法编译的,所以我们得它们的3类东西,分别是条文件,导入库(log4cxx.lib,
log4cxxd.lib)和动态链接库(log4cxx.dll)。
假设我们要之目结构要下图:

起名 1

 

 

1. GMA是缓解方案目录
2.
PureMilk与ChocolateMilk是项目目录
3. Lib目录用于存放导入库或者静态库(包括第三方库和友爱之种类)
4. Include用于存放第三方库的头文件(可以看第三方库所有情节分布于Lib、Include和Bin中)
5.
Bin目录存放所有动态链接库和执行档,包括好之起与老三方库,区分Release和Debug两个版。另外,程序运行过程被需要外部的数据文件和启动时要之配置文件等等都不过放于该目录
6.
Temp用于存放临时变更文书,其中Compile存放编译器编译时别的obj文件,Link存放链接器的出口文件。

7.PureMilk跟ChocoliteMilk两个档次之条文件和来文件位置不要动,任然在独家的档次文件夹内。
地方目录结构清晰,一面了然,当我们的顺序用打造安装包或一旦从包源码
发表之时候,它能够使得我们活变得再易^_^
制作安装包时我们惟有待将“/GMA/Bin/Release/”目录下的有所文件包。

公布暨换源码的上咱们得打包除了Temp目录外“/GMA/”下面的有文件与目录(如果非需执行档,也不过免包括Bin)。

咱们的求是不言而喻的,可是VC
2008(VS2008)并无见面自行为咱搞好地方装有的作业。不过我们并不需要编写复杂的编译脚本(makefile),只待简单的改项目的缺省设置即可。
咱俩得VC(VS)为我们举行的事体包括:
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/”为办事目录
第一看一下档次设置中可采取的庞,常用的发生:

起名 2

 

产图是有一个工有安装的例子:

起名 3

留神:从上图可以看出,TargetDir指目标目录,是一个目录。而TargetPath是目标路径,包括具体的文件称

 

下开始进行所举事例的工程安装:

第一来装ChocolateMilk:
1.下“/GMA/Temp/Compile/”作为项目编译时行使的中游目录
2.用到“/GMA/Temp/Link/”作为项目链接的出口目录

起名 4

顾高亮的组成部分,首先将配备改成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/”【这是以要不安装,此时变动的dll和lib都在面安装的出口目录中】
咱们普通还见面于Debug版本的输出库后面长字母“d”以代表这是Debug版本,在Debug配置下,修改Import Library栏位:

起名 5

 

VC可以给咱装构建前后执行的脚本程序,所以为了做到3,
我们需要写构建后实行之台本:

起名 6

 

在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没有代表导入库底宏名字
-_-P
OK,到是结束,你就算足以编译ChocolateMilk项目试试是匪是一切正常了,不过请确认拷贝的目标目录事先建立好。

 

对接下我们安应用程序项目PureMilk:
1.运用“/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/”为工作目录

起名 7

Command栏位填入:$(SolutionDir)\Bin\$(ConfigurationName)\$(TargetFileName)
Working
Directory栏位填入:$(SolutionDir)\Bin\$(ConfigurationName)\
诸如此类虽可怜功告成了,现在而虽得编译该实施顺序并开展调节。

 

 

为vs2010呢列,一些种类性质截图如下:

一、调试-》命令

起名 8

倘齐图设置,如果项目名称为ss,则TargetName系统变量的价就是ss,TargetExt是扩大名为exe,此时单击调试按钮(vs中之死去活来小三角形按钮),会起动图中所著目录下之ss-XX-.exe文件。

瞩目:调试栏目下之具备选项都是为着调节服务的,如果不用调试按钮,这些选择就不起作用。至于VC++目录以及C/C++栏目是被编译器起作用的,无法是告编译器在哪里寻找头文件、库文件之类的工作,或者安装任何一些编译器选项,此不赘述。

 

次、链接器-》常规-》输出文件 
(表示链接器生成的exe文件在哪以及变更的exe文件名称)

 起名 9

 

齐图中,如果项目名称为ss,则总是器生成的exe为图被所展示目录下的ss-YY-.exe文件。一般的话这文件之职以及名要跟地方所陈述之“命令”选项相同,以象征链接器生成的文书与调节时采用的文本一律。(注意调试时如没修改源代码操作,单击调试按钮后,为了加速调试速度,并无会见指向先后还链接,也便无见面启动链接器)

经自家举行过的有些试行验证,如果都由此链接器生成了exe文件,手动修改是exe文件称,调试时只要用直达图所展示之取舍的文本称吧开展对应的修改,一样可以拓展调节并启动exe程序。

 

 三、链接器-》输入-》附加依赖项  
(此选项是安装程序链接时使用的静态库。相当给链接已编译好了之“代码”。由此我们得以简简单单的当这些库就相当给我们写的.cpp文件,只不过这些库是编译好了底.cpp而现已)

起名 10

 

末尾说一下,在开发进程遭到,究竟怎么来让
Visual Studio 链接这些 lib 及 dll 文件会于好啊?

以,在调试 Visual Studio 2008
程序时,经常有一对动态链接库(即 dll
文件)需要加载到工程里,这样才能够依靠第三正在库开展程序调试。

这些动态链接库,往往都是测试版本或是开发被的本,或者会产生多少个本子;这个时刻,如果直白拿
dll 所在目录加至 PATH 里,则会生神秘冲突的险恶;如果直白拷贝到 Visual
Studio
的目下,假如测试工程太多,每次来新本子的动态链接库更新时,你得更新若干软,拷贝、粘贴苦不堪言。

完全达成的话,有几乎种方式好改变 Visual
Studio 的环境变量设置:

  1. 直长到网的 PATH 变量里:

    本条方法极其简单易行,也极直接,但是坏处是会见影响全局的
    PATH 设置,尤其是公包含着大量测试用底 dll 时。

  2. 当 Visual Studio 全局设置里,把 dll
    所在目录上加到 PATH 里:

    经过 Visual Studio 菜单 ==> 工具
    ==> 选项 ==> 项目及缓解方案 ==>
    VC++目录,在下拉框里选”可执行文件”,然后将 dll
    所于途径上加进去。

  3. 直白将具有 dll 拷贝到 Visual Studio
    工程目录产,或是拷贝到变化可执行文件的文书夹(默认情况下是 Debug 或
    Release 目录)下:

    夫法吗异常简单,但是当你出几单工程时,你每次换代
    SDK 及其 dll
    文件,你就要拿装有的工程还更新,这个不切合文件唯一性的工程性准则。

  4. 以调试程序时,让 Visual Studio
    帮你切换当前工作目录及 dll 相应的目录下:

    在 Visual Studio ==> Project
    ==> Properties ==> Select Configuration ==> Configuration
    Properties ==> Debugging ==> Working directory 里填充上 dll
    所在目录,这样当当调试程序时,Visual Studio
    会把当前工作目录切换到这个目录下,从而会自行读取本目录下之 dll
    文件。

    这个方法的亮点很明白,简单!副作用吧老显眼,在你切换了脚下做事目录后,你也许会见寻找不至程序的布文件,在先后里写的例如”./config.ini”全部还摸不顶了;另外,你要将具备的
    dll 都置于这个工作目录里,否则一律会唤醒说找不顶 xxx.dll
    的题目。

  5. 最终一个法,也是自个儿当绝好的一个道,在
    Visual Studio 工程属性里拿一个索引临时添加到 PATH
    环境变量里:

    MSDN 上也生接近的牵线:How to: Set
    Environment Variables for
    Projects,方法十分简短,在
    “工程属性” ==> “调试” ==>
    “环境”里,添加类似如下所展示之情:

    PATH=%PATH%;$(TargetDir)\DLLS
    

    这样虽可把 $(TargetDir)\DLLS
临时添加到拖欠工程所属的系统 PATH 里。

 

世家可以根据项目之实在情形,灵活选用以上措施。

 

附1:C#获设置工作目录及执行目录代码

(1)获取和装当前工作目录

a)          System.IO.Directory.GetCurrentDirectory()

证实:获取应用程序的此时此刻做事目录的一心限定路径。该方式是本着Win32 API的GetCurrentDirectory函数的一个打包。

例如:'”C:\Documents
and Settings\Administrator\My Documents”

b)         System.Environment.CurrentDirectory  

证:获取或安装当前工作目录的意限定路径。该属性之中调用的就是System.IO.Directory.GetCurrentDirectory()方法,二者是法力是相等价格的。

例如:'”C:\Documents
and Settings\Administrator\My Documents”

c)          System.IO.Path.GetFullPath(“.”)

说明:获取指定路线字符串的绝对路径。也可以为此GetFullPath(“.\”),GetFullPath(“.\\”)

例如:'”C:\Documents
and Settings\Administrator\My Documents”

(2)获取与设置当前履行目录

a)          System.Windows.Forms.Application.StartupPath

证明:获取启动了应用程序的可执行文件的门道,不包括可执行文件的称。常用于WinForm.

例如:'”D:\Projects\MyTest\bin”

b)         System.AppDomain.CurrentDomain.BaseDirectory

证实:获取基目录,它由程序集冲突解决程序用来探测程序集。返回路径末尾带“\”

例如:'”D:\Projects\MyTest\bin\”

c)          System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase

证明:获取或设置包含该应用程序的目的称。返回路径末尾带“\”

例如:'”D:\Projects\MyTest\bin\”

(3)获取与安当前履行目录,包括可执行文件名

a)          System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName

证明:获取模块的完全路径。包括可执行文件的名目。

例如:'”D:\Projects\MyTest\bin\MyTest.exe”

b)         System.Windows.Forms.Application.ExecutablePath

说明:获取启动了应用程序的可执行文件的门路,包括可执行文件的称谓。

例如:'”D:\Projects\MyTest\bin\MyTest.exe”

c)          System.Reflection.Assembly.GetExecutingAssembly().Location

说明:如果含有清单的都加载文件并未于形象复制,则获得该公文之核心代码格式的岗位。

例如:'”D:\Projects\MyTest\bin\MyTest.exe”

d)         System.Reflection.Assembly.GetExecutingAssembly().CodeBase

证明:获取最初指定的主次集的职,例如,在AssemblyName对象被指定的职务。

例如:'”file:///D:/Projects/MyTest/bin/MyTest.exe”

 

附2:vs(主要是.Net)中常用的各种类型的公文:

附:*.ascx *.asax *.aspx.resx
*.asax.resx是啊文件

sln:解决方案文件,为解决方案资源管理器提供展示管理文件之图接口所待的信。 
.csproj:项目文件,创建应用程序所需要的援、数据连接、文件夹和文书的消息。 
.aspx:Web
窗体页由片有些组成:视觉元素(HTML、服务器控件和静态文本)和该页的编程逻辑。Visual
Studio 将马上半个部分分别存储在一个独立的文书中。视觉元素在.aspx
文件被开创。
.aspx.cs:Web
窗体页的编程逻辑在一个单独的接近公事被,该公文称作代码隐藏类文件(.aspx.cs)。 
.cs:
类模块代码文件。业务逻辑处理层的代码。 
.asax:Global.asax 文件(也号称 ASP.NET
应用程序文件)是一个可选的文书,该公文包含响应 ASP.NET 或 HTTP
模块引发的应用程序级别事件的代码。
.config:Web.config
文件于它所在的目及所有子目录提供配置信息。 
.aspx.resx/.resx:资源文件,资源是当逻辑上由于应用程序部署之另不可实行多少。通过当资源文件被储存数据,无需另行编译整个应用程序即可更改数据。 
.XSD:XML
schema的一种.从DTD,XDR发展到XSD 
.pdb:PDB(程序数据库)文件保持着调节和项目状态信息,从而得以针对程序的调节配置进行增量链接。 
.suo:解决方案用户选择,记录有以与解决方案成立涉的选项,以便在历次打开时,它还包含您所举行的自定义设置。 
.asmx:asmx 文件包含 WebService
处理指令,并为此作 XML Web services 的可寻址入口点 
.vsdisco(项目发现)文件 基于 XML
的文本,它富含为 Web 服务提供发现信息之资源的链接 (URL)。 
.htc:一个HTML文件,包含脚本和定义组件的平等雨后春笋HTC特定元素.htc提供于本子中implement组件的体制 

.ascx 是用户控件代码文件
.aspx webform html脚论文件
.cs 是c#类文件)
.vb 是vb类文件)
.aspx.cs
和你的webform相关的后台c#代码文件,其实跟.cs是同的
.aspx.vb
和汝的webform相关的后台VB代码文件,其实跟.vb是同一的
web.config 配置文件
.xml xml文件
.css 样式表文件

 

转自《VS项目性质的一对布置起的总结(important)》

 

加:VC++目录下的包含目录和库目录

蕴含目录:告诉VC去什么地方找头文件.h(如调用opencv时用的头文件等)。

仓库目录:告诉VC去啊地方找库文件.lib,是动态库(如opencv中之堆栈)。

库房文件就lib文件,如cutil32.lib,这是次里的代码调用了cutil32.lib里之办法。在链接器->输入->附加依赖项里设填写上cutil32.lib,此时便会见失去地方安装的库目录提供的不二法门寻找并加载。

次发布后不复用cutil32.lib,但是得cutil32.dll了。两种植方案:

1、把所要的dll复制到发表的程序(release)文件夹下。

2、把所需dll文件的目在到path环境变量下。

这边的法则是:当运行应用程序时,操作系统会在当前应用程序所在目录及Path变量目录里找所用的文本同时实施。

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图