Windows 更新的脱机符号

本主题介绍如何使用Windows 更新的脱机符号。 它描述了一个过程,该过程可用于在无法访问 Microsoft 符号服务器的计算机上解码Windows 更新日志。

如果你经常需要这样做,你应该看看设置符号代理服务器是否适用于网络配置。 有关详细信息,请参阅 SymProxy

以下所有选项都要求你有一台计算机可以连接到 Microsoft 的符号服务器,并且能够将文件复制到具有日志的计算机或从具有日志的计算机复制文件。 无权访问符号服务器的计算机将称为 脱机 计算机,而具有访问权限的计算机将称为 联机 计算机。

我们建议为每个 OS 内部版本使用单个联机计算机,以便 WU 符号缓存将逐月生成并包含来自多个更新版本的 WU 符号。

如果有权访问与脱机计算机完全相同的修补程序级别的联机计算机,则有两个选项:

通过在 winver 两台计算机上运行 或 ver 来验证联机和脱机电脑的版本级别相同。

C:\>ver

Microsoft Windows [Version 10.0.17134.167]

如果无法访问具有相同版本的联机计算机,则需要执行一些额外的步骤来创建 SymChk 清单文件,本主题稍后在 选项 3:创建 SymChk 清单文件中进行了介绍。

选项 1:将 ETL 事件日志复制到联机计算机

  1. 将所有 WindowsUpdate ETL 文件从 C:\Windows\logs\WindowsUpdate\ 复制到联机计算机。

  2. 在联机计算机上,打开 PowerShell 提示符并运行以下 Get-WindowsUpdateLog PowerShell 命令。

    Get-WindowsUpdateLog -ETLPath <path to ETLs>
    

    这将下载日志分析所需的符号。

选项 2:将符号复制到脱机计算机

  1. 在联机计算机上,打开 PowerShell 提示符并运行“Get-WindowsUpdateLog”。 这会缓存日志分析所需的符号。

  2. 将 %temp%\WindowsUpdateLog\SymCache 中的所有文件从联机计算机复制到 %temp%\WindowsUpdateLog\SymCache 脱机计算机上。

  3. 在脱机计算机上,打开 PowerShell 提示符并运行“Get-WindowsUpdateLog”来分析日志。

选项 3:创建 SymChk 清单文件

  1. 在脱机计算机上,按照将 清单文件与 SymChk 配合使用 中的步骤操作,在 system32 目录中为这些文件创建清单:

    storewuauth.dll
    wuapi.dll
    wuauclt.exe
    wuaueng.dll
    wuautoappupdate.dll
    wuuhext.dll
    wuuhmobile.dll
    
  2. 将清单复制到联机计算机。

  3. 使用清单文件,使用 SymChk 将符号本地下载到联机电脑。

  4. 将传递给 SymChk 的文件夹和符号复制到脱机电脑上的 %temp%\WindowsUpdateLog\SymCache。

  5. 在脱机计算机上,打开 PowerShell 提示符并运行“Get-WindowsUpdateLog”来分析日志。

另请参阅

使用符号服务器

符号路径

调试时的符号问题