正确设置符号进行调试可能是一项很有挑战性的任务,尤其是对于内核调试而言。 这通常需要知道计算机上所有产品的名称和版本。 调试器必须能够找到与产品版本和服务包对应的每个符号文件。

这可能会导致符号路径极长,路径中包含一长串的目录。 为了简化协调符号文件的这些困难,可以将符号文件收集到 符号存储 中,然后由 符号服务器 访问。

符号存储 是符号文件、索引和工具的集合,管理员可使用该工具添加和删除文件。 符号存储还可以包含可执行图像文件。

根据唯一参数(如时间戳和图像大小)为文件编制索引。 符号存储还可以保存可使用符号服务器提取的可执行图像文件。 Windows 调试工具包含名为 SymStore 的符号存储创建工具。

调试器使用符号 服务器访问符号 存储中的文件。 Windows 调试工具包括符号存储创建工具 SymStore 和符号服务器 SymSrv 。 它还包括一个工具 SymProxy ,用于在网络上设置 HTTP 符号存储,以充当调试器可能需要访问的所有符号存储的代理。

符号服务器使调试器能够自动从符号存储检索正确的符号文件,而无需用户知道产品名称、版本或内部版本号。 Windows 调试工具包含一个名为 SymSrv 的 符号服务器。 通过在符号路径中包含特定文本字符串来激活符号服务器。 每次调试程序需要为新加载的模块加载符号时,都会调用符号服务器来查找相应的符号文件。 有关使用符号服务器的信息,请参阅 Microsoft 公共符号

如果要对符号搜索使用与 SymSrv 提供的方法不同的方法,则可以开发自己的符号服务器 DLL。 有关实现此类符号服务器的详细信息,请参阅 其他符号服务器

本节包括:

HTTP 符号存储

文件共享 (SMB) 调试器符号服务器

符号存储文件夹树

其他符号存储

安装 Windows 符号文件

Windows 更新的脱机符号

如果不设置自己的符号存储,而只是想要使用公共 Microsoft 符号存储,请参阅 Microsoft 公共符号

符号实用工具

以下实用工具可以在较大的软件开发项目中分发和控制符号。