Windows的一大特点就是微软提供了非常好用的调试框架及调试工具(特别是强大的Windbg),并且免费提供系统文件的pdb,从而使得不论R3还是R0的软件调试都变得清晰很多。
但是微软的符号服务器有个比较大的问题,就是下载速度比较慢,Windbg动不动就要卡住下载符号一番,实在让人难受。
所以就萌生了一个简单的想法:有没有办法预先下载好所有符号,之后只要符号没有更新就不再下载呢?毕竟符号更新的频率也不是很高,下载好所有符号之后那么几乎任何情况下Windbg都不会再卡一下了。
方法是有的,就是在有symchk.exe的目录下执行以下命令:
symchk.exe /r %windir%\ /s srv*D:\LocalSymbolCache*http://msdl.microsoft.com/download/symbols /od
/r是递归,/s是指定存放目录和下载源,/od是输出过程中的详细信息(不然默认没有输出不知道进展)。
执行后静静等待即可,注意提前留好足够的硬盘空间,符号文件加起来可能高达1GB。