解决VC2008加载符号缓慢的问题

解决VC2008加载符号缓慢的问题

虽然VC2008在机器上安装有一段时间了,但是平时开发还是VC6用的多。今天下午调试一下《把脉VC++》一书所附带的源码时发现在我机器上VC2008进入调试模式时非常的慢。表现是Debug Output的地方一个接一个的加载用到的dll文件所对应的符号,一看防火墙:晕,居然是从网上下载的!每加载一个DLL就上网下载符号文件,公司网速又慢,实在烦人。

自己尝试了一番,未果。又在网上搜索一番,最后在以下网址找到了解决方法:

http://www.wintellect.com/CS/blogs/jrobbins/archive/2009/05/29/keeping-specific-pdb-files-from-loading-in-the-debugger.aspx

方法1(经过测试):

在VS2008的安装目录的IDE文件夹下(我机器上是D:/Program Files/Microsoft Visual Studio 9.0/Common7/IDE)新建一个symsrv.ini文件,我们可以在里面设置想要排除的文件。因为我全都不想加载,所以就*.*啦,文件内容如下:

-------------------------------------------------------------------------------------------------

[exclusions]
*.*

-------------------------------------------------------------------------------------------------

方法2(未测试):

建立一个注册表文件,左边是要排除的符号文件名,右边的是注释

-------------------------------------------------------------------------------------------------

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER/Software/Microsoft/Symbol Server/Exclusions]
"notepad.pdb"=""
"ora*.*"=""

-------------------------------------------------------------------------------------------------

按照方法1设置后,一按F5马上就可以开始调试了,哈哈。

 

 

 

 

 

解决方法:

首先通过分析发现我遇到的问题,是因为Load Symbol过慢造成的,通过google发现解决这个问题的办法也很简单,参考文章:

http://blogs.msdn.com/mahuja/archive/2008/07/08/resolving-very-slow-symbol-loading-with-vs-2008-during-debugging.aspx

将环境变量中的:

_NT_SYMBOL_PATH=srv*c:/mysymbols*http://msdl.microsoft.com/download/symbols;cache*c:/mysymbols

键删除,并重新启动VS2008即可,因为此键的存在会使VS2008到此键中标记的地址去下载Symbol,而造成调试启动的极度下降。

你可能感兴趣的:(解决VC2008加载符号缓慢的问题)