本文提供了一个在Windows环境下使用Visual Studio 2013编辑现有源代码并且保持目录结构的方法。
本文使用VS2013中文社区版做示例(本版本为免费版,可在VS官网下载),其他版本的VS操作方式类似。
打开VS2013,选择【菜单】-【新建】-【从现有代码创建项目】
选择项目类型:Visual C++
项目文件位置:创建完成后会在这个目录生成sln,suo,vcxproj,filters和user等VS解决方案和项目文件,这个必须和源代码的根目录保持一致,否则不能导入文件夹结构。
项目名称填所需项目
最后去除勾选【在解决方案资源管理器中显示所有文件】,避免文件太多
因为代码是Linux代码,并不需要在Windows下编译,所以选择使用外部生成系统即可
无需编译的话,直接选择下一步
完成项目生成向导
项目生成中,如果文件较多,会需要一些时间
如果源文件来源于网络映射盘(比如笔者这里使用的是Linux的Samba共享磁盘),会弹出安全警告,去除勾选选择确定即可。
项目创建好后,在解决方案资源管理器中会出现所有筛选过后项目目录的源文件,是未分文件夹的。如果看不到解决方案资源管理器,可以在【菜单】-【视图】中打开。
上面不分文件夹的源文件并不是我们想要的,如果需要分文件夹,在解决方案资源管理器中点击【显示所有文件】图标,如下图所示。点击之后,会出现文件夹。并且会在文件图标上标示出该文件是否属于项目文件。
如果源代码路径文件有更新,比如增加或者删除文件,在解决方案资源管理器中点击刷新按钮,即可看到最新的文件状态。如果要将新文件添加进项目进行管理,则在新文件上点击右键,选择【包括在项目中】即可,添加后文件图标也会做出相应改变。
由于源代码是Linux下,Linux的头文件与VS默认的头文件不一致,会导致很多头文件找不到或者是不匹配,影响代码提示和阅读。解决方法是添加Linux的头文件到Include路径。下面是具体操作方法:
在解决方案资源管理器中右键项目,选择【属性】。
在弹出的属性页中,找到VC++目录,其中的包含目录填上Linux下的头文件目录。
关于Linux的头文件如何获得,可以在Linux下使用Samba服务端,在Windows上连接,将下面3个路径复制到Windows系统相应目录即可,最好linux下复制一个,就在windows下复制一份,否则一些文件可能会被后续的复制操作覆盖。
cp -r /usr/include ~/1
cp -r /usr/lib/gcc/ ~/2 #这个目录可能稍有变化,也许是/usr/lib64/gcc
cp -r /usr/local/include ~/3
复制完成后,将下面的路径粘贴至VS中即可,其中【D:\Code\Linux\Ubuntu\】为Windows下对应Linux的根目录
D:\Code\Linux\Ubuntu\usr\include\c++\4.8;
D:\Code\Linux\Ubuntu\usr\include\x86_64-linux-gnu\c++\4.8;
D:\Code\Linux\Ubuntu\usr\include\c++\4.8\backward;
D:\Code\Linux\Ubuntu\usr\lib\gcc\x86_64-linux-gnu\4.8\include;
D:\Code\Linux\Ubuntu\usr\local\include;
D:\Code\Linux\Ubuntu\usr\lib\gcc\x86_64-linux-gnu\4.8\include-fixed;
D:\Code\Linux\Ubuntu\usr\include;
D:\Code\Linux\Ubuntu\usr\include\x86_64-linux-gnu;
本文使用VS2013中文社区版做示例(本版本为免费版,可在VS官网下载),其他版本的VS操作方式类似。
打开VS2013,选择【菜单】-【新建】-【从现有代码创建项目】
![](http://imgsrc.baidu.com/forum/w%3D580/sign=402f651f942397ddd679980c6983b216/abbe6dafa40f4bfbdefac2ac064f78f0f636185f.jpg?x-oss-process=image/resize,w_1400/format,webp)
选择项目类型:Visual C++
![](http://imgsrc.baidu.com/forum/w%3D580/sign=2ac0f8eb92dda144da096cba82b6d009/7313930f4bfbfbed8d736a877df0f736aec31f5f.jpg?x-oss-process=image/resize,w_1400/format,webp)
项目文件位置:创建完成后会在这个目录生成sln,suo,vcxproj,filters和user等VS解决方案和项目文件,这个必须和源代码的根目录保持一致,否则不能导入文件夹结构。
项目名称填所需项目
最后去除勾选【在解决方案资源管理器中显示所有文件】,避免文件太多
![](http://imgsrc.baidu.com/forum/w%3D580/sign=b634fe15a444ad342ebf878fe0a30c08/8db37cfbfbedab6424581138f236afc378311e5f.jpg?x-oss-process=image/resize,w_1400/format,webp)
因为代码是Linux代码,并不需要在Windows下编译,所以选择使用外部生成系统即可
![](http://imgsrc.baidu.com/forum/w%3D580/sign=bfcac88ca8345982c58ae59a3cf5310b/6247ccedab64034f50e79efeaac379310b551d5f.jpg?x-oss-process=image/resize,w_1400/format,webp)
无需编译的话,直接选择下一步
![](http://imgsrc.baidu.com/forum/w%3D580/sign=8853c4fc5c82b2b7a79f39cc01accb0a/d2519c64034f78f0de21c60b7c310a55b2191c5f.jpg?x-oss-process=image/resize,w_1400/format,webp)
完成项目生成向导
![](http://imgsrc.baidu.com/forum/w%3D580/sign=8723304ab7b7d0a27bc90495fbee760d/82d8344f78f0f73685d410f90f55b319eac4135f.jpg?x-oss-process=image/resize,w_1400/format,webp)
项目生成中,如果文件较多,会需要一些时间
![](http://imgsrc.baidu.com/forum/w%3D580/sign=7295db7fd5a20cf44690fed746084b0c/2af34ff0f736afc35226639db619ebc4b645125f.jpg?x-oss-process=image/resize,w_1400/format,webp)
如果源文件来源于网络映射盘(比如笔者这里使用的是Linux的Samba共享磁盘),会弹出安全警告,去除勾选选择确定即可。
![](http://imgsrc.baidu.com/forum/w%3D580/sign=9ea0b96a09f431adbcd243317b37ac0f/514cc036afc379312642dad1eec4b74542a9115f.jpg?x-oss-process=image/resize,w_1400/format,webp)
项目创建好后,在解决方案资源管理器中会出现所有筛选过后项目目录的源文件,是未分文件夹的。如果看不到解决方案资源管理器,可以在【菜单】-【视图】中打开。
![](http://imgsrc.baidu.com/forum/w%3D580/sign=fdb5653c34adcbef01347e0e9cae2e0e/de8a98c379310a559e0e820cb24543a98326105f.jpg?x-oss-process=image/resize,w_1400/format,webp)
上面不分文件夹的源文件并不是我们想要的,如果需要分文件夹,在解决方案资源管理器中点击【显示所有文件】图标,如下图所示。点击之后,会出现文件夹。并且会在文件图标上标示出该文件是否属于项目文件。
![](http://imgsrc.baidu.com/forum/w%3D580/sign=22e35865ceef76093c0b99971edca301/867f4e310a55b319c5d3de8d46a98226cefc175f.jpg?x-oss-process=image/resize,w_1400/format,webp)
如果源代码路径文件有更新,比如增加或者删除文件,在解决方案资源管理器中点击刷新按钮,即可看到最新的文件状态。如果要将新文件添加进项目进行管理,则在新文件上点击右键,选择【包括在项目中】即可,添加后文件图标也会做出相应改变。
![](http://imgsrc.baidu.com/forum/w%3D580/sign=1ebaa22773094b36db921be593cd7c00/508d3d55b319ebc498522a618726cffc1f17165f.jpg?x-oss-process=image/resize,w_1400/format,webp)
由于源代码是Linux下,Linux的头文件与VS默认的头文件不一致,会导致很多头文件找不到或者是不匹配,影响代码提示和阅读。解决方法是添加Linux的头文件到Include路径。下面是具体操作方法:
在解决方案资源管理器中右键项目,选择【属性】。
![](http://imgsrc.baidu.com/forum/w%3D580/sign=fbf81fc14e36acaf59e096f44cd88d03/23e98419ebc4b74573beebeecafc1e178b82155f.jpg?x-oss-process=image/resize,w_1400/format,webp)
在弹出的属性页中,找到VC++目录,其中的包含目录填上Linux下的头文件目录。
关于Linux的头文件如何获得,可以在Linux下使用Samba服务端,在Windows上连接,将下面3个路径复制到Windows系统相应目录即可,最好linux下复制一个,就在windows下复制一份,否则一些文件可能会被后续的复制操作覆盖。
cp -r /usr/include ~/1
cp -r /usr/lib/gcc/ ~/2 #这个目录可能稍有变化,也许是/usr/lib64/gcc
cp -r /usr/local/include ~/3
复制完成后,将下面的路径粘贴至VS中即可,其中【D:\Code\Linux\Ubuntu\】为Windows下对应Linux的根目录
D:\Code\Linux\Ubuntu\usr\include\c++\4.8;
D:\Code\Linux\Ubuntu\usr\include\x86_64-linux-gnu\c++\4.8;
D:\Code\Linux\Ubuntu\usr\include\c++\4.8\backward;
D:\Code\Linux\Ubuntu\usr\lib\gcc\x86_64-linux-gnu\4.8\include;
D:\Code\Linux\Ubuntu\usr\local\include;
D:\Code\Linux\Ubuntu\usr\lib\gcc\x86_64-linux-gnu\4.8\include-fixed;
D:\Code\Linux\Ubuntu\usr\include;
D:\Code\Linux\Ubuntu\usr\include\x86_64-linux-gnu;
创建完成后项目文件目录会生成以下项目文件,以后需要打开项目直接双击sln解决方案文件即可
本文转自博客园知识天地的博客,原文链接:Visual Studio 2013新建工程导入现有代码文件夹并且保持目录结构,如需转载请自行联系原博主。