最笨的办法就是,自己在VS的解决方案管资源理器中,逐个的添加对应的分类器(显示成文件夹的图标)。然后在分类器中添加对应文件夹的文件。最好保持解决方案管资源理器的结构和文件的目录结构一样,这样管理代码文件比较好。
不过需要提醒的一点就是,解决方案管资源理器的结构和实际的文件目录结构没有任何关系,解决方案管资源理器的结构层次只是帮助你分组显示代码文件而已。可能VS里看到很多层的代码结构(分类器有很多层),实际上所有代码文件都在同一个目录下面。
不过,下载的源码文件一般太多了。如果手动去慢慢添加,真的就的忙了。有没有更好的办法呢?当然有。
这是之前一个朋友问我,当时只是简单的告诉他了方法,没有具体的演示。不过今天自己又用上了,觉得这个技巧还是很有必要说一下。
下面是演示过程:
1.我们从网上下载了一个源码,存放在一个文件夹里。文件夹存放在桌面,文件目录结构如下:
2.如果我们可以根据需要,创建一个空白项目,或者将cjjjs.com的源码添加到已经打开的项目中。
创建新项目时,选择【空项目】,这样就只创建了项目文件,不会生成任何源码文件。如下图所示:
然后在解决方案资源管理器中可以看到,什么也没有。如下图所示:
然后在项目名称上右击,然后点击【在Windows资源管理器中打开文件夹】,这样就快速打开了项目所在的文件夹了。菜单如下图所示:
可以看到,这个文件夹就只有三个文件,而且这都是项目的配置文件,没有.h或.cpp的文件哦。如果是打开已有的项目,则这里是有很多文件的。
【项目文件夹中没有源码文件】
然后将下载的源码文件夹里的文件,复制到这个文件夹里。保持下载的源码的目录结构。复制好源码后的效果如下:
【复制源码文件到项目文件夹中】
3.当源码文件都进入了项目文件夹后,就可以用VS扫描了。我们只是复制到项目文件夹,所以解决方案资源管理器依然空空如也,它不会自动扫描的。所以,我们在VS的主菜单【项目】->点击【显示所有文件】,然后项目文件夹里的文件都显示出来了。展开看看,效果如下:
我们可以看到,文件都显示出来了,然后图标下有一个减号,让人感觉不正常。是的,这样表示文件还没有真正加入项目,所以,下一步就是将它们都加入项目中。
【图标下有一个减号,让人感觉不正常】
4.将所有的文件夹和文件都加入到项目中如果是看到文件夹图标(分类器)的,下面的所有源码文件,不需要一个个加入。我们直接在文件夹图标(分类器)上右击,然后点击【包括在项目中】。如下图所示:
这样这个分类器下的所有文件都被加入到项目中了。加入了之后,这个分类器下面的文件都被正确的识别为头文件或者cpp文件了。单个文件也是这样加入到项目中。效果如下图所示:
【一个文件夹包含在项目中了】
【所有代码文件都包含在项目中了】
这样一来,即使你下载了一个项目文件夹有成千上万个文件和N多个文件夹结构,都可以分分钟加入到项目中。非常的省时省力。
下面简单解释一下这个工作机制。
在解决方案资源管理器中看到的有文件夹的图标的叫做分类器,这个分类器只适合归类代码文件,让显示在解决方案资源管理器中的文件可以分类更加清楚。不管你怎么移动解决方案资源管理器中的文件,对于真正的文件夹的结构,不会有任何影响。分类器只是帮助管理和阅读代码的,不操作文件夹结构。
所以你可以放心调整解决方案资源管理器里的结构。因此也不要希望调整了解决方案资源管理器的结构来修改文件夹的结构。实际上在解决方案资源管理器看到的每一个文件都附带了一个文件路径的信息,所以不管你放在哪个分类器下,路径都不会变,也就可以正常打开文件。
我们显示所有的文件,这个动作执行时,VS会扫描项目文件夹下的所有文件,如果不在项目中,会列出来,然后用一个减号图标表示。同样,将文件加入项目也会对分类器下面的所有文件进行扫描,然后修改每一个文件状态,将信息写入项目配置文件里。这样就成功加入到了项目中。保存项目以后,下次再打开,这些加入到项目的文件,还在项目中。
加入项目成功后,该怎么玩就怎么玩,就不是本文的事了。