VS工程目录下的ipch文件夹和.sdf文件
Visual Studio 2010工程目录下的ipch文件夹和.sdf文件 - web8 - 博客园http://www.cnblogs.com/web100/archive/2012/12/21/vs2010-ipch-sdf.html
使用VS2010建立C++解决方案时,会生成SolutionName.sdf和一个叫做ipch的文件夹,
这两个文件再加上*.pch等文件使得工程变得非常的庞大
关闭它。方法:
Tools->Options->Text Editor->C/C++->Advanced->Disable Database,设置为True
但是这样的办法会产生另外的一些问题,可能会导致其他的一些功能不能使用。另外一种解决方法是:
Tools->Options->Text Editor->C/C++->Advanced,在 Fallback Location 的属性组中,将"Always Use Fallback Location"设置为 true,将"Do Not Warn If Fallback Location Used" 设置为 true
,然后删除解决方案目录下的 sdf 文件和 ipch 目录,再次打开解决方案,发现这些烦人的东西已经不见了。
那么那些文件放置到那里了呢?看 "Fallback Location" 属性说明:这是存储浏览信息数据库和 IntelliSense 文件的第二个位置,如果不指定则放置到临时目录中;到临时目录一看,里面有一个 VC++ 的目录,都在那个目录里面呢。
可以在 "Fallback Location" 属性中,设置一个固定的路径来存储这些文件,比如D:\VS2010Temp,这样也比较好管理这些庞大的臃肿的文件,可以定期清理掉它们,释放出硬盘空间!
昨天上班时突然碰到一个很奇怪的问题,我将一个工程目录剪贴至其他目录下后,用vs 2010再次打开该工程时, 右键菜单中的“go to definition”无法正确的工作。例如在一个使用函数getExtensionMode的地方按下快捷键F12键, 弹出包含如下的Message Box:
但是明明那个函数的定义就在那个源文件里面。同样的问题也出现在同一个solution的其他文件中,这样造成查看代码很不方便,严重影响工作效率。
通过网上一番搜索之后,终于找到了出现上面情况的原因,工程目录中的ipch文件夹和.sdf文件不能正常工作。解决方法:关闭打开的工程,接着把工程目录下的ipch目录下所有文件和所有.sdf文件都删除,然后用VS 2010重新打开工程,让vs 2010重新生成那些文件,这样就可以使用F12快捷键了。
其实ipch和sdf分别是Visual Studio 2010用来保存预编译头文件和Intellisense信息的地方,对工程本身的功能没有影响,只是用来加快编译和便于代码提示。但是这部分文件通常都会占用比较庞大的磁盘空间,所以在拷贝或转移工程项目时可以把这部分文件先删掉。
有一种方法可以让这部分辅助文件不包含在工程项目目录下,减小工程项目的占用的磁盘空间,但同时又能利用这些文件带来的便利,那就是通过设置把他们统统放到一个独立于工程目录的fallback location中。在Visual Studio 2010里进入如下设置:进入“Tools > Options”,选择“Text Editor > C/C++ > Advanced”,然后找到“Fallback Location”。然后把“Always use Fallback Location”和“Do Not Warn if Fallback Location”设置成“True”,并且在“Fallback Location”中设置放置该类型文件的路径,如下图:
这样所有工程项目的预编译文件和code Intellisense信息就都放在c:\vs 2010 Intellisense\文件夹下了。
VS工程目录下的ipch文件夹和.sdf文件的更多相关文章
- 解决VS2010中产生的ipch文件夹和sdf文件
纯粹参考他人博文,转载时注明参考链接!!! 参考链接: http://blog.sina.com.cn/s/blog_707a4cbf0100r5jq.html 在VS2010开发的项目中,ipch文 ...
- VS中ipch文件夹和sdf文件的处理方式
ipch文件夹和sdf是VS产生的预编译头文件和智能提示信息,对编码没有影响,可存放在固定的位置,定期进行清理
- python实现某目录下将多个文件夹内的文件复制到一个文件夹中
现实生活中,我们经常有这样的需求,如下图,有三个文件夹,文件夹1内含有1.txt文件 文件夹2中内含有2.txt文件,文件夹3中含有3.txt文件.我们有时候需要把1.txt, 2.txt, 3.tx ...
- python 实现统计ftp服务器指定目录下文件夹数目、文件数目及所有文件大小
本次主要为满足应用方核对上传到ftp服务器的文件是否缺漏. 主要要求:指定目录下,文件夹数目/文件数目/所有文件大小,类似Windows如下功能: 模块介绍: from ftplib import F ...
- java基础 File 递归删除文件夹中所有文件文件夹 目录(包含子目录)下的.java文件复制到e:/abc文件夹中, 并统计java文件的个数
File 递归删除文件夹中所有文件文件夹 package com.swift.kuozhan; import java.io.File; import java.util.Scanner; /*键盘录 ...
- C# 选择文件、选择文件夹、打开文件(或者文件夹) 路径中获取文件全路径、目录、扩展名、文件名称 追加、拷贝、删除、移动文件、创建目录 修改文件名、文件夹名!!
https://www.cnblogs.com/zhlziliaoku/p/5241097.html 1.选择文件用OpenDialog OpenFileDialog dialog = new Ope ...
- Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录
Java IO,io,文件操作,删除文件,删除文件夹,获取文件父级目录 这里先简单的贴下常用的方法: File.separator //当前系统文件分隔符 File.pathSeparator // ...
- java基础 File与递归练习 使用文件过滤器筛选将指定文件夹下的小于200K的小文件获取并打印按层次打印(包括所有子文件夹的文件) 多层文件夹情况统计文件和文件夹的数量 统计已知类型的数量 未知类型的数量
package com.swift.kuozhan; import java.io.File; import java.io.FileFilter; /*使用文件过滤器筛选将指定文件夹下的小于200K ...
- Qt Creator 更改默认构建目录到工程目录下
Qt Creator 更改默认构建目录到工程目录下 步骤 工具->选项->构建和运行->概要->Default build directory->去掉第一个". ...
随机推荐
- 【Linux】head命令
用途 它是用来显示开头或结尾某个数量的文字区块 全称 head的全称即为head 参数 -q :隐藏文件名 -v :显示文件名 -c :<字节>显示字节数 -n :<行数>显示 ...
- ubuntu 14.04为/检查磁盘时发生严重错误的解决方法
http://jingyan.baidu.com/article/0aa22375bbffbe88cc0d6419.html
- 用ping让对方电脑堵塞瘫痪
用ping让对方电脑堵塞瘫痪2008-04-27 11:32 定义echo数据包大小. 在默认的情况下windows的ping发送的数据包大小为32byt,我们也可以自己定义它的大小, 但有一个大小的 ...
- 自增长主键Id的设计
http://www.cnblogs.com/lhking/p/3945865.html
- Ubuntu 14.10 -- 异次元软件世界
Ubuntu 14.10 中文桌面版/服务器正式版下载 - 华丽免费易于入门的 Linux 操作系统 [ 系统工具 - Linux // 2014-10-25 ] 一说到 Linux,就不得不 ...
- js获取当前域名的方法
一.获取当前域名 1.方法一 var domain = document.domain; 2.方法二 var domain = window.location.host; 但是获取到的domain在线 ...
- JavaScript之Web通讯
web通信,一个特别大的topic,涉及面也是很广的.因最近学习了 javascript 中一些 web 通信知识,在这里总结下.文中应该会有理解错误或者表述不清晰的地方,还望斧正! 一.前言 1. ...
- unity, EventType.MouseUp注意事项
如果鼠标移出了窗口范围,则即使鼠标抬起也不会收到EventType.MouseUp消息,所以只写 if(event==EventType.MouseUp){ 执行某操作 } 是错误的,会导致非常奇怪的 ...
- blender, 创建多边形面片
按a键清除所有选择,进入Edit Mode,选vertex select方式.然后按住control,使用MLB连续画多个顶点,形成一个多边形,如图所示: 然后同时选中两个端点,点Make Edge/ ...
- Memcached真的过时了吗?
Memcached真的过时了吗? 这两年Redis火得可以,Redis也常常被当作Memcached的挑战者被提到桌面上来.关于Redis与Memcached的比较更是比比皆是.然而,Redis真的在 ...