使用 WinDbg 进行调试

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure Artifacts 提供用于发布符号的专用符号服务器。 此服务器允许连接可自动提取正确符号文件的调试器,使你能够有效地调试应用程序。 借助 WinDbg 等工具,可以加载可执行文件、将调试器附加到正在运行的进程、使用符号、设置断点并系统地分析代码。

将符号服务器添加到 WinDbg

若要使用 Azure Artifacts 符号服务器,必须将组织添加到符号搜索路径,但在我们可以执行此操作之前,必须先创建个人访问令牌。

  1. 使用符号(读取)范围创建个人访问令牌并将其复制到剪贴板。

  2. 打开 WinDbg,或者 安装它(如果尚未安装 )。

  3. 选择“文件,然后选择“OpenExecutable以加载要调试的可执行文件。

  4. 运行以下命令以设置符号路径。 将占位符替换为特定组织名称:

    .sympath+ https://artifacts.dev.azure.com/<ORGANIZATION_NAME>/_apis/symbol/symsrv
    
  5. 通过运行 bp 命令设置断点。 这会触发符号请求。

  6. 在身份验证提示期间,插入 之前生成的个人访问令牌 。 可以将用户名字段留空。 WinDbg 将继续获取可执行文件的符号。

  7. 若要验证符号是否已加载,请运行 lm 命令列出所有已加载的模块。

开始调试

WinDbg 增强了调试的范围和多功能性,从而在用户模式和内核模式下对组件进行有效故障排除: