自定义符号存储和符号服务器

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

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

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

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

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

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

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

本部分包括:

HTTP 符号存储

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

符号存储文件夹树

其他符号存储

安装 Windows 符号文件

Windows 更新的脱机符号

如果不设置自己的符号存储,但只是打算使用公共Microsoft符号存储,请参阅 Microsoft公共符号

符号实用工具

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

效用 DESCRIPTION
SymProxy 用于配置基于 HTTP 的符号存储,以充当客户端计算机和其他符号存储之间的代理。
SymStore SymStore (symstore.exe) 是用于创建符号存储的工具。
AgeStore AgeStore 工具(agestore.exe)会根据其上次访问日期删除目录或目录树中的文件。
胸径 DBH 工具(dbh.exe)是一种命令行工具,用于显示有关符号文件内容的信息。
PDBCopy PDBCopy 工具(pdbcopy.exe)是一种命令行工具,用于从符号文件中删除专用符号信息。
SymChk SymChk(Microsoft符号检查器工具),Symchk.exe,是一个将可执行文件与符号文件进行比较的程序。