使用Windbg分析转储文件:我应该在符号文件路径中设置什么路径?

使用Windbg分析转储文件:我应该在符号文件路径中设置什么路径?,windbg,Windbg,在VS2008崩溃后,我使用创建了一个转储文件。我怀疑这是一个Resharper问题,所以我需要生成足够的信息以便Resharper修复 现在,当我打开Windbg时,我需要设置符号文件路径。根据,我必须将其设置为: SRV*your local folder for symbols*http://msdl.microsoft.com/download/symbols 但是,既然我正在调查resharper中的问题,我不应该从resharper应用程序目录获取pdb文件,而不是下载VS 200

在VS2008崩溃后,我使用创建了一个转储文件。我怀疑这是一个Resharper问题,所以我需要生成足够的信息以便Resharper修复

现在,当我打开Windbg时,我需要设置符号文件路径。根据,我必须将其设置为:

SRV*your local folder for symbols*http://msdl.microsoft.com/download/symbols
但是,既然我正在调查resharper中的问题,我不应该从resharper应用程序目录获取pdb文件,而不是下载VS 2008或Microsoft dll符号吗

或者,换句话说,我只需要重新精简pdb符号,而不需要来自Microsoft的符号
因为是Resharper导致了崩溃,对吗?

符号路径可以包含多个位置。使用.sympath+添加到现有符号路径。您可以有一个符号路径,如c:\applicationpath;c:\librariespath;SRV*c:\localcache*http://someserver; SRV*c:\localcache*http://somotherserver.

符号路径可以包含多个位置。使用.sympath+添加到现有符号路径。您可以有一个符号路径,如c:\applicationpath;c:\librariespath;SRV*c:\localcache*http://someserver; SRV*c:\localcache*http://somotherserver.

如果没有所有PDB,调试器引擎将默认导出符号。因此,对于源自没有关联符号文件的模块的调用,调用堆栈将显示相对于模块导出的位置


仅为Resharper提供pdb将显示其内部的正确调用。对于其他DLL内部的调用,它将求助于导出。因此,如果您对Resharper内部的调用感兴趣,那么仅为其提供符号就足够了

如果没有所有PDB,调试器引擎将默认导出符号。因此,对于源自没有关联符号文件的模块的调用,调用堆栈将显示相对于模块导出的位置


仅为Resharper提供pdb将显示其内部的正确调用。对于其他DLL内部的调用,它将求助于导出。因此,如果您对Resharper内部的调用感兴趣,那么仅为其提供符号就足够了

谢谢,但我是否需要从Microsoft加载符号?是的。任何进程堆栈都会在一些MS DLL ntdll、C/C++运行时以及更多的进程上具有帧,您希望堆栈能够正确显示。没有正确的pdb可能会通过堆栈显示进入lala land。谢谢,但是是否需要我从Microsoft加载符号?是的。任何进程堆栈都会在一些MS DLL ntdll、C/C++运行时以及更多的进程上具有帧,您希望堆栈能够正确显示。没有正确的pdb可能会通过堆栈显示进入lala land。