【问题标题】:Visual Studio doesn't cache Microsoft Symbol Server cache misses?Visual Studio 不缓存 Microsoft 符号服务器缓存未命中?
【发布时间】:2010-11-02 09:46:58
【问题描述】:

我在 Visual Studio 2008 中使用 Microsoft Symbol Server,它运行良好。不幸的是,当公共符号服务器不包含符号时​​,超时需要一段时间,并且每次我启动项目进行调试时,Visual Studio 都会尝试重新加载相同的缺失符号。

有什么方法可以让(或欺骗)Visual Studio 记住“未命中”而不是再打扰一段时间?

【问题讨论】:

    标签: visual-studio-2008 debugging symbol-server


    【解决方案1】:

    this post
    但似乎您也可以使用symsrv.ini 控制符号加载
    (我猜ini文件应该放在...\Microsoft Visual Studio 9.0\Common7\IDE文件夹下)

    更新:刚刚找到this link。 使用注册表比使用ini文件的方式更好。

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

    【讨论】:

    • 注册表中没有“Symbol Server”文件夹是什么意思?
    【解决方案2】:

    您可以通过 VS IDE 执行此操作(我在 2005 年、2010 年和 2012 年完成了此操作)。

    方法一(推荐):

    • 打开“模块”窗口(调试->Windows->模块)
    • 按“符号状态”对列表进行排序
    • 查找并选择状态为“找不到...”的模块组
    • 右键单击并选择“自动符号加载设置 -> 始终手动加载”

    方法二:

    • 打开“工具->选项”并导航到“调试->符号”
    • 点击第一个单选按钮下的“指定排除的模块”(应该选中)
    • 将模块名称添加到列表中,然后单击“确定”

    【讨论】:

    • 注意:“模块”窗口仅在调试时可用(至少是 VS2012)
    • 并且,要手动指定符号,请从相关模块的上下文菜单中选择“加载符号”。
    • 在 VS2019 中只有一个始终自动加载的开关。使用此设置启动一个新的桌面项目并对其进行调试,然后符号开始下载,就好像没有本地符号缓存一样,它肯定还在这里,并被另一个项目使用,它不在另一个窗口中打开(好像应该有什么不同)。但是还有另一个workaround
    猜你喜欢
    • 2010-11-28
    • 2012-04-21
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-12
    相关资源
    最近更新 更多