0

VS 2010 处理符号文件的分辨率是否与其他 MS 产品不同?复制步骤:

  1. 打开控制面板并确保 _NT_SYMBOL_PATH 设置为有效的值,例如 SRV*C:\DebugSymbols*\buildserver\Builds\Symbols* http://msdl.microsoft.com/download/symbols
  2. 使用windbgVS 2012打开一个 minidump 文件=> 调试器成功加载符号
  3. 使用VS 2010打开相同的小型转储文件=> 调试器无法找到符号
  4. 打开 VS 中的 Options 对话框,并将调试符号路径设置为与上面相同的路径。(此设置将在您关闭 VS 时保存。)
  5. 使用VS 2010打开相同的 minidump 文件=> 调试器成功加载符号

这个repro在我们部门的所有机器上。手动设置路径是一次性操作,在开发盒上没问题,但在不断重新映像 VM 的实验室中,这是一个主要的痛点。

2010 是否使用其他工具不使用的其他环境变量?

VS 是否有一个主设置文件,该文件被每个用户的 CurrentSettings.vssettings 覆盖?

4

1 回答 1

1

经过多次询问和搜索,我从可靠的来源发现

_NT_SYMBOL_PATH 是一个环境变量,由 VS 用于加载符号的同一组件使用,但不被 VS 使用。

我相信此评论特定于 VS 2010(未经证实)。我无法在 VS 2012 中重现该问题。

这与另一个更常见的问题有关,即 VS 将忽略本地缓存,从而导致性能问题,即使它已在 _NT_SYMBOL_PATH 中设置。

解决方法是在 VS 2010 中手动设置路径,或者(更好)在 VS 2012 中打开故障转储。

于 2013-08-05T23:27:43.913 回答