首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在调试器中设置符号服务器 | Setting Up Symbol Server in Debugger

调试符号允许您有更好的调试会话。他们拥有关于可执行文件和动态库中包含的函数的信息,并为您提供获取干净的调用堆栈的信息。Symbol Server允许调试器自动加载正确的符号,二进制文件和源代码,而不会强制用户下载大型调试文件。服务器的功能类似于微软的符号服务器,因此这里的文档可能很有用。

请注意,由于发布的Electron版本经过大量优化,调试并不总是那么容易。调试器将无法向您显示所有变量的内容,并且由于内联,尾调用和其他编译器优化,执行路径看起来很奇怪。唯一的解决方法是构建未优化的本地构建。

Electron的官方符号服务器URL是https://electron-symbols.githubapp.com。您无法直接访问此URL,您必须将其添加到调试工具的符号路径中。在下面的例子中,使用本地缓存目录来避免从服务器重复获取PDB。用c:\code\symbols机器上适当的缓存目录替换。

在Windbg中使用符号服务器

Windbg符号路径配置有用星号字符分隔的字符串值。要仅使用Electron符号服务器,请将以下条目添加到符号路径中(注意:c:\code\symbols如果您希望在下载的符号中使用不同的位置,则可以使用计算机上的任何可写目录进行替换):

代码语言:javascript
复制
SRV*c:\code\symbols\*https://electron-symbols.githubapp.com

将该字符串设置为_NT_SYMBOL_PATH在环境中,使用Windbg菜单或键入.sympath命令。如果你想从微软的符号服务器获取符号,你应该首先列出:

代码语言:javascript
复制
SRV*c:\code\symbols\*http://msdl.microsoft.com/download/symbols;SRV*c:\code\symbols\*https://electron-symbols.githubapp.com

在Visual Studio中使用符号服务器

故障排除:符号不会加载

在Windbg中键入以下命令以打印符号未加载的原因:

代码语言:javascript
复制
> !sym noisy
> .reload /f electron.exe

扫码关注腾讯云开发者

领取腾讯云代金券