SetupDiagSetupDiag

适用范围Applies to

  • Windows 10Windows 10

备注

这是 (中等高级) 的300级别主题。This is a 300 level topic (moderate advanced).
有关本文中的完整主题列表,请参阅解决 Windows 10 升级错误See Resolve Windows 10 upgrade errors for a full list of topics in this article.

 下载 SetupDiag Download SetupDiag

关于 SetupDiagAbout SetupDiag

当前可下载的 SetupDiag 版本:1.6.0.42Current downloadable version of SetupDiag: 1.6.0.42

始终确保运行最新版本的 SetupDiag,以便可以访问已知问题的新功能和修复。Always be sure to run the most recent version of SetupDiag, so that can access new functionality and fixes to known issues.

SetupDiag 是一种独立诊断工具,可用于获取有关 Windows 10 升级失败原因的详细信息。SetupDiag is a standalone diagnostic tool that can be used to obtain details about why a Windows 10 upgrade was unsuccessful.

SetupDiag 通过检查 Windows 安装程序日志文件来工作。SetupDiag works by examining Windows Setup log files. 它将尝试分析这些日志文件,以确定更新或将计算机升级到 Windows 10 时失败的根本原因。It attempts to parse these log files to determine the root cause of a failure to update or upgrade the computer to Windows 10. SetupDiag 可以在无法更新的计算机上运行,也可以将日志从计算机导出到另一个位置,然后在脱机模式下运行 SetupDiag。SetupDiag can be run on the computer that failed to update, or you can export logs from the computer to another location and run SetupDiag in offline mode.

Windows 10 版本2004及更高版本中的 SetupDiagSetupDiag in Windows 10, version 2004 and later

Windows 安装程序随附有 windows 10 版本2004的版本。 SetupDiagWith the release of Windows 10, version 2004, SetupDiag is included with Windows Setup.

在升级过程中,Windows 安装程序会将其所有源文件提取到 %SystemDrive%$Windows.~bt\Sources 目录中。During the upgrade process, Windows Setup will extract all its sources files to the %SystemDrive%$Windows.~bt\Sources directory. 在 Windows 10 版本2004及更高版本中, setupdiag.exe 也安装在此目录中。With Windows 10, version 2004 and later, setupdiag.exe is also installed to this directory. 如果升级有问题,SetupDiag 将自动运行以确定失败的原因。If there is an issue with the upgrade, SetupDiag will automatically run to determine the cause of the failure.

由 Windows 设置运行时,将使用以下 参数When run by Windows Setup, the following parameters are used:

  • /ZipLogs: False/ZipLogs:False
  • /Format: xml/Format:xml
  • /Output:% windir% \logs\SetupDiag\SetupDiagResults.xml/Output:%windir%\logs\SetupDiag\SetupDiagResults.xml
  • /RegPath: HKEY_LOCAL_MACHINE\SYSTEM\Setup\SetupDiag\Results/RegPath:HKEY_LOCAL_MACHINE\SYSTEM\Setup\SetupDiag\Results

可在 % WinDir% \Logs\SetupDiag\SetupDiagResults.xmlHKLM\SYSTEM\Setup\SetupDiag\Results下的注册表中找到所得到的 SetupDiag 分析。The resulting SetupDiag analysis can be found at %WinDir%\Logs\SetupDiag\SetupDiagResults.xml and in the registry under HKLM\SYSTEM\Setup\SetupDiag\Results.

如果升级过程正常进行," " 目录(包括 setupdiag.exe )将移到 " %SystemDrive%\Windows.Old " 下的 "清理" 下。If the upgrade process proceeds normally, the Sources directory including setupdiag.exe is moved under %SystemDrive%\Windows.Old for cleanup. 如果稍后删除了 Windows 旧 目录, setupdiag.exe 也将被删除。If the Windows.old directory is deleted later, setupdiag.exe will also be removed.

使用 SetupDiagUsing SetupDiag

要在当前计算机上快速使用 SetupDiag,请执行以下操作:To quickly use SetupDiag on your current computer:

  1. 验证你的系统是否满足以下所述的 要求Verify that your system meets the requirements described below. 如果需要,请安装 .net framework 4.6If needed, install the .NET framework 4.6.
  2. 下载 SetupDiagDownload SetupDiag.
  3. 如果 web 浏览器询问如何处理该文件,请选择 " 保存"。If your web browser asks what to do with the file, choose Save. 默认情况下,文件将保存到 " 下载 " 文件夹。By default, the file will be saved to your Downloads folder. 如果需要,还可以使用 " 另存为" 将其保存到其他位置。You can also save it to a different location if desired by using Save As.
  4. SetupDiag 下载完成后,打开下载文件的文件夹。When SetupDiag has finished downloading, open the folder where you downloaded the file. 默认情况下,这是您的 " 下载 " 文件夹,它显示在 "文件资源管理器" 的左侧导航窗格中的 " 快速访问 " 下。By default, this is your Downloads folder, which is displayed in File Explorer under Quick access in the left navigation pane.
  5. 双击 SetupDiag 文件以运行它。Double-click the SetupDiag file to run it. 如果系统要求你批准运行程序,请单击 "是"Click Yes if you are asked to approve running the program.
    • 双击要运行的文件时,它将在 SetupDiag 完成其分析后自动关闭命令窗口。Double-clicking the file to run it will automatically close the command window when SetupDiag has completed its analysis. 如果您希望使此窗口保持打开状态,并查看所看到的消息,请通过在命令提示符处键入 SetupDiag 来运行程序,而不是双击它。If you wish to keep this window open instead, and review the messages that you see, run the program by typing SetupDiag at the command prompt instead of double-clicking it. 您需要将目录更改为 SetupDiag 的位置,以便以这种方式运行。You will need to change directories to the location of SetupDiag to run it this way.
  6. 当 SetupDiag 诊断您的计算机时,将打开一个命令窗口。A command window will open while SetupDiag diagnoses your computer. 请等待此操作完成。Wait for this to finish.
  7. 当 SetupDiag 完成时,将在您双击 SetupDiag 的同一文件夹中创建两个文件。When SetupDiag finishes, two files will be created in the same folder where you double-clicked SetupDiag. 一个是配置文件,另一个是日志文件。One is a configuration file, the other is a log file.
  8. 使用记事本打开日志文件: SetupDiagResultsUse Notepad to open the log file: SetupDiagResults.log.
  9. 查看显示的信息。Review the information that is displayed. 如果规则匹配,这可能会告诉你计算机升级失败的原因,以及如何解决该问题。If a rule was matched, this can tell you why the computer failed to upgrade, and potentially how to fix the problem. 请参阅下面的 文本日志示例See the Text log sample below.

有关如何在脱机模式下运行工具以及更多高级选项的说明,请参阅下面的 " 参数 " 和 " 示例 " 部分。For instructions on how to run the tool in offline mode and with more advanced options, see the Parameters and Examples sections below.

本主题底部的 发行说明 部分包含有关此工具的最新更新的信息。The Release notes section at the bottom of this topic has information about recent updates to this tool.

要求Requirements

  1. 目标操作系统必须为 Windows 10。The destination OS must be Windows 10.

  2. 必须安装.Net Framework 4.6.NET Framework 4.6 must be installed. 如果不确定当前已安装的 .NET 版本,请参阅 操作方法:确定安装了哪些 .Net Framework 版本If you are not sure what version of .NET is currently installed, see How to: Determine Which .NET Framework Versions Are Installed. 你还可以使用以下命令行查询来显示已安装的 v4 版本:You can also use the following command-line query to display the installed v4 versions:

    reg query "HKLM\SOFTWARE\Microsoft\Net Framework Setup\NDP\v4" /s
    

参数Parameters

参数Parameter 说明Description
/?/?
  • 显示交互式帮助Displays interactive help
输出/Output:<path to results file>
  • 此可选参数使你能够指定结果的输出文件。This optional parameter enables you to specify the output file for results. 在这里,你可以找到 SetupDiag 可以确定的内容。This is where you will find what SetupDiag was able to determine. 仅支持文本格式输出。Only text format output is supported. UNC 路径将起作用,前提是 SetupDiag 运行有权访问 UNC 路径的上下文。UNC paths will work, provided the context under which SetupDiag runs has access to the UNC path. 如果路径中包含空格,则必须用双引号将整个路径括起来 (请参阅下面的 "示例" 部分) 。If the path has a space in it, you must enclose the entire path in double quotes (see the example section below).
  • 默认:如果未指定,SetupDiag 将在运行 SetupDiag.exe 的同一目录中创建文件SetupDiagResults。Default: If not specified, SetupDiag will create the file SetupDiagResults.log in the same directory where SetupDiag.exe is run.
/LogsPath:/LogsPath:<Path to logs>
  • 此可选参数告诉 SetupDiag.exe 在哪里可以找到脱机分析的日志文件。This optional parameter tells SetupDiag.exe where to find the log files for an offline analysis. 这些日志文件可以采用平面文件夹格式,也可以包含多个子目录。These log files can be in a flat folder format, or containing multiple subdirectories. SetupDiag 将递归搜索所有子目录。SetupDiag will recursively search all child directories.
/ZipLogs:/ZipLogs:<True | False>
  • 此可选参数告诉 SetupDiag.exe 创建包含结果及其分析的所有日志文件的 zip 文件。This optional parameter tells SetupDiag.exe to create a zip file containing the results and all the log files it parsed. 将在运行 SetupDiag.exe 的同一目录中创建 zip 文件。The zip file is created in the same directory where SetupDiag.exe is run.
  • 默认值:如果未指定,则使用值 "true"。Default: If not specified, a value of 'true' is used.
编排/Format:<xml | json>
  • 此可选参数可用于以 xml 或 JSON 格式输出日志文件。This optional parameter can be used to output log files in xml or JSON format. 如果未指定此参数,则默认使用文本格式。If this parameter is not specified, text format is used by default.
/Scenario: \ [恢复 ]/Scenario:[Recovery]
  • 此可选参数指示 SetupDiag.exe 查找和处理重置和恢复日志并忽略设置/升级日志。This optional parameter instructs SetupDiag.exe to look for and process reset and recovery logs and ignore setup/upgrade logs.
/Verbose/Verbose
  • 此可选参数将更多数据输出到日志文件。This optional parameter will output much more data to a log file. 默认情况下,SetupDiag 将仅为严重错误生成日志文件条目。By default, SetupDiag will only produce a log file entry for serious errors. 使用 /verbose 将导致 SetupDiag 始终使用调试详细信息生成另一个日志文件。Using /Verbose will cause SetupDiag to always produce an additional log file with debugging details. 当报告 SetupDiag 的问题时,这些详细信息会很有用。These details can be useful when reporting a problem with SetupDiag.
/NoTel/NoTel
  • 此可选参数指示 SetupDiag.exe 不向 Microsoft 发送诊断遥测。This optional parameter tells SetupDiag.exe not to send diagnostic telemetry to Microsoft.
/AddReg/AddReg
  • 此可选参数指示 SetupDiag.exe 在脱机模式下向注册表添加失败信息。This optional parameter instructs SetupDiag.exe to add failure information to the registry in offline mode. 默认情况下,SetupDiag 将仅在联机模式下将失败信息添加到注册表。By default, SetupDiag will add failure information to the registry in online mode only. 将注册表数据添加到运行 SetupDiag 的系统上的以下位置: HKLM\SYSTEM\Setup\MoSetup\Volatile\SetupDiagRegistry data is added to the following location on the system where SetupDiag is run: HKLM\SYSTEM\Setup\MoSetup\Volatile\SetupDiag.
/RegPath/RegPath
  • 此可选参数指示 SetupDiag.exe 使用指定的路径将失败信息添加到注册表。This optional parameter instructs SetupDiag.exe to add failure information to the registry using the specified path. 如果未指定此参数,则默认路径为 HKLM\SYSTEM\Setup\MoSetup\Volatile\SetupDiagIf this parameter is not specified the default path is HKLM\SYSTEM\Setup\MoSetup\Volatile\SetupDiag.
|

注意: /Mode 参数在 SetupDiag 的版本1.4.0.0 中已弃用。Note: The /Mode parameter is deprecated in version 1.4.0.0 of SetupDiag.

  • 在以前的版本中,此命令与 LogsPath 参数一起使用,以指定 SetupDiag 应以脱机方式运行以分析从不同计算机捕获的一组日志文件。In previous versions, this command was used with the LogsPath parameter to specify that SetupDiag should run in an offline manner to analyze a set of log files that were captured from a different computer. 在1.4.0.0 版中,当你指定/LogsPath 时,SetupDiag 将在脱机模式下自动运行,因此不需要/Mode 参数。In version 1.4.0.0 when you specify /LogsPath then SetupDiag will automatically run in offline mode, therefore the /Mode parameter is not needed.

示例:Examples:

在以下示例中,SetupDiag 是通过 (online 模式的默认参数运行的,因此,结果文件在) 运行 SetupDiag 的同一文件夹中 SetupDiagResults。In the following example, SetupDiag is run with default parameters (online mode, results file is SetupDiagResults.log in the same folder where SetupDiag is run).

SetupDiag.exe

在以下示例中,SetupDiag 以联机模式运行 (这是默认) 。In the following example, SetupDiag is run in online mode (this is the default). 它将知道在当前 (无法) 系统中查找日志的位置,因此无需提前收集日志。It will know where to look for logs on the current (failing) system, so there is no need to gather logs ahead of time. 指定了结果的自定义位置。A custom location for results is specified.

SetupDiag.exe /Output:C:\SetupDiag\Results.log

下面的示例使用/Output 参数将结果保存到包含空格的路径名称:The following example uses the /Output parameter to save results to a path name that contains a space:

SetupDiag /Output:"C:\Tools\SetupDiag\SetupDiag Results\Results.log"

以下示例指定 SetupDiag 在脱机模式下运行,并处理在 D:\Temp\Logs\LogSet1中找到的日志文件。The following example specifies that SetupDiag is to run in offline mode, and to process the log files found in D:\Temp\Logs\LogSet1.

SetupDiag.exe /Output:C:\SetupDiag\Results.log /LogsPath:D:\Temp\Logs\LogSet1

以下示例在脱机模式下设置恢复方案。The following example sets recovery scenario in offline mode. 在此示例中,SetupDiag 将在指定的 LogsPath 位置搜索重置/恢复日志,并将结果输出到/Output 参数指定的目录。In the example, SetupDiag will search for reset/recovery logs in the specified LogsPath location and output the results to the directory specified by the /Output parameter.

SetupDiag.exe /Output:C:\SetupDiag\RecoveryResults.log /LogsPath:D:\Temp\Cabs\PBR_Log /Scenario:Recovery

以下示例在联机模式下设置恢复方案。The following example sets recovery scenario in online mode. 在此示例中,SetupDiag 将在当前系统上搜索重置/恢复日志,并以 XML 格式输出结果。In the example, SetupDiag will search for reset/recovery logs on the current system and output results in XML format.

SetupDiag.exe /Scenario:Recovery /Format:xml

日志文件Log files

Windows 安装程序日志文件和事件日志 包含有关在 Windows 安装期间创建日志的位置的信息。Windows Setup Log Files and Event Logs has information about where logs are created during Windows Setup. 对于脱机处理,你应该针对整个文件夹的内容运行 SetupDiag。For offline processing, you should run SetupDiag against the contents of the entire folder. 例如,根据升级失败的时间,将以下文件夹之一复制到您的脱机位置:For example, depending on when the upgrade failed, copy one of the following folders to your offline location:

\ $Windows。 ~ bt\sources\panther\$Windows.~bt\sources\panther
\ $Windows。 ~ bt\Sources\Rollback\$Windows.~bt\Sources\Rollback
\Windows\Panther\Windows\Panther
\Windows\Panther\NewOS\Windows\Panther\NewOS

如果复制父文件夹和所有子文件夹,SetupDiag 将自动搜索所有子目录中的日志文件。If you copy the parent folder and all sub-folders, SetupDiag will automatically search for log files in all subdirectories.

设置 bug 检查分析Setup bug check analysis

当 Microsoft Windows 遇到影响安全系统操作的情况时,系统会暂停。When Microsoft Windows encounters a condition that compromises safe system operation, the system halts. 这种情况称为 "bug 检查"。This condition is called a bug check. 它通常也称为系统崩溃、内核错误、停止错误或 BSOD。It is also commonly referred to as a system crash, a kernel error, a Stop error, or BSOD. 通常,硬件设备、硬件驱动程序或相关软件导致此错误。Typically a hardware device, hardware driver, or related software causes this error.

如果系统上 启用 了故障转储,则会创建一个故障转储文件。If crash dumps are enabled on the system, a crash dump file is created. 如果在升级期间发生了 bug 检查,Windows 安装程序将提取小型转储 (setupmem) 文件。If the bug check occurs during an upgrade, Windows Setup will extract a minidump (setupmem.dmp) file. SetupDiag 还可以调试这些与设置相关的 minidumps。SetupDiag can also debug these setup related minidumps.

若要调试与设置相关的 bug 检查,您必须:To debug a setup related bug check, you must:

  • 指定 /LogsPath 参数。Specify the /LogsPath parameter. 不能在联机模式下调试内存转储。You cannot debug memory dumps in online mode.
  • 从出现故障的系统中 (setupmem) 收集安装程序内存转储文件。Gather the setup memory dump file (setupmem.dmp) from the failing system.
    • Setupmem 将在 % SystemDrive% \ $Windows ~ bt\Sources\Rollback%WinDir%\Panther\NewOS\Rollback 中创建,具体取决于 bug 检查发生的时间。Setupmem.dmp will be created in either %SystemDrive%$Windows.~bt\Sources\Rollback, or in %WinDir%\Panther\NewOS\Rollback depending on when the bug check occurs.
  • 在运行 SetupDiag 的计算机上安装 Windows 调试工具Install the Windows Debugging Tools on the computer that runs SetupDiag.

在以下示例中,将 setupmem 文件复制到 D:\Dump 目录,并在运行 SetupDiag 之前安装 Windows 调试工具:In the following example, the setupmem.dmp file is copied to the D:\Dump directory and the Windows Debugging Tools are installed prior to running SetupDiag:

SetupDiag.exe /Output:C:\SetupDiag\Dumpdebug.log /LogsPath:D:\Dump

已知问题Known issues

  1. 如果所涉及的日志文件较大,某些规则可能需要很长时间才能处理。Some rules can take a long time to process if the log files involved are large.

示例输出Sample output

下面是在脱机模式下运行 SetupDiag 的示例。The following is an example where SetupDiag is run in offline mode.

D:\SetupDiag>SetupDiag.exe /output:c:\setupdiag\result.xml /logspath:D:\Tests\Logs\f55be736-beed-4b9b-aedf-c133536c946e /format:xml

SetupDiag v1.6.0.0
Copyright (c) Microsoft Corporation. All rights reserved.

Searching for setup logs...
Found d:\tests\Logs\f55be736-beed-4b9b-aedf-c133536c946e\setupact_6.log with update date 6/12/2019 2:44:20 PM to be the correct setup log.
Found d:\tests\Logs\f55be736-beed-4b9b-aedf-c133536c946e\setupact_1.log with update date 6/12/2019 2:45:19 PM to be the correct rollback log.

Gathering baseline information from setup logs...

SetupDiag: processing rule: CompatScanOnly.
...No match.

...

SetupDiag: processing rule: DISMImageSessionFailure.
..
Error: SetupDiag reports DISM provider failure.
Last Phase: Safe OS
Last Operation: Apply Optional Component status
Message = Failed to get the IDismImage instance from the image session
Function: CDISMManager::CloseImageSession
Error: 0x800706ba
Recommend you re-download the update source files, reboot and try the update again.

SetupDiag found 1 matching issue.

SetupDiag results were logged to: c:\setupdiag\results.xml
Logs ZipFile created at: c:\setupdiag\Logs_14.zip

规则Rules

搜索日志文件时,SetupDiag 使用一组规则来比对已知问题。When searching log files, SetupDiag uses a set of rules to match known issues. 这些规则包含在运行 SetupDiag 时提取的 rules.xml 文件中。These rules are contained in the rules.xml file which is extracted when SetupDiag is run. rules.xml 文件可能会在 SetupDiag 的新版本可用时进行更新。The rules.xml file might be updated as new versions of SetupDiag are made available. 有关详细信息,请参阅 发行说明 部分。See the release notes section for more information.

将列出每个规则名称及其关联的唯一规则标识符以及已知的升级阻止问题的说明。Each rule name and its associated unique rule identifier are listed with a description of the known upgrade-blocking issue. 在规则说明中,术语 "下一级" 指升级过程的第一阶段,该阶段在启动操作系统下运行。In the rule descriptions, the term "down-level" refers to the first phase of the upgrade process, which runs under the starting OS.

  1. CompatScanOnly - FFDAFD37-DB75-498A-A893-472D49A1311DCompatScanOnly - FFDAFD37-DB75-498A-A893-472D49A1311D
    • 此规则指示使用特定的命令行参数调用 setup.exe,该参数指示安装程序仅执行兼容性扫描,而不是升级。This rule indicates that setup.exe was called with a specific command line parameter that indicated setup was to do a compat scan only, not an upgrade.
  2. BitLockerHardblock - C30152E2-938E-44B8-915B-D1181BA635AEBitLockerHardblock - C30152E2-938E-44B8-915B-D1181BA635AE
    • 当目标操作系统不支持 BitLocker,而主机操作系统已启用 BitLocker 时,这是一个块。This is a block when the target OS does not support BitLocker, yet the host OS has BitLocker enabled.
  3. VHDHardblock - D9ED1B82-4ED8-4DFD-8EC0-BE69048978CCVHDHardblock - D9ED1B82-4ED8-4DFD-8EC0-BE69048978CC
    • 当主机操作系统引导至 VHD 映像时,将发生此块。This block happens when the host OS is booted to a VHD image. 从 VHD 映像启动主机操作系统时,不支持升级。Upgrade is not supported when the host OS is booted from a VHD image.
  4. PortableWorkspaceHardblock - 5B0D3AB4-212A-4CE4-BDB9-37CA404BB280PortableWorkspaceHardblock - 5B0D3AB4-212A-4CE4-BDB9-37CA404BB280
    • 这表示主机操作系统从 Windows To-Go 设备 (USB 密钥) 启动。This indicates that the host OS is booted from a Windows To-Go device (USB key). Windows To-Go 环境中不支持升级。Upgrade is not supported in the Windows To-Go environment.
  5. AuditModeHardblock - A03BD71B-487B-4ACA-83A0-735B0F3F1A90AuditModeHardblock - A03BD71B-487B-4ACA-83A0-735B0F3F1A90
    • 此块指示主机操作系统当前已启动到审核模式,这是一个用于修改 Windows 状态的特殊模式。This block indicates that the host OS is currently booted into Audit Mode, a special mode for modifying the Windows state. 此状态不支持升级。Upgrade is not supported from this state.
  6. SafeModeHardblock - 404D9523-B7A8-4203-90AF-5FBB05B6579BSafeModeHardblock - 404D9523-B7A8-4203-90AF-5FBB05B6579B
    • 此块指示主机操作系统将启动到安全模式,而不支持升级。This block indicates that the host OS is booted to Safe Mode, where upgrade is not supported.
  7. InsufficientSystemPartitionDiskSpaceHardblock - 3789FBF8-E177-437D-B1E3-D38B4C4269D1InsufficientSystemPartitionDiskSpaceHardblock - 3789FBF8-E177-437D-B1E3-D38B4C4269D1
    • 当安装程序确定存储启动加载程序文件的系统分区 () 没有足够空间来处理升级过程中所需的较新的引导文件时,将遇到此块。This block is encountered when setup determines the system partition (where the boot loader files are stored) does not have enough space to be serviced with the newer boot files required during the upgrade process.
  8. CompatBlockedApplicationAutoUninstall – BEBA5BC6-6150-413E-8ACE-5E1EC8D34DD5CompatBlockedApplicationAutoUninstall – BEBA5BC6-6150-413E-8ACE-5E1EC8D34DD5
    • 此规则表明需要先卸载应用程序,然后才能继续安装。This rule indicates there is an application that needs to be uninstalled before setup can continue.
  9. CompatBlockedApplicationDismissable - EA52620B-E6A0-4BBC-882E-0686605736D9CompatBlockedApplicationDismissable - EA52620B-E6A0-4BBC-882E-0686605736D9
    • 在/quiet 模式下运行安装程序时,除非命令行还指定 "/compat ignorewarning",否则会转换为触消除的应用程序消息。When running setup in /quiet mode, there are dismissible application messages that turn into blocks unless the command line also specifies “/compat ignorewarning”. 此规则指示安装程序在/quiet 模式下执行,但存在阻止安装程序继续运行的应用程序触消除阻止消息。This rule indicates setup was executed in /quiet mode but there is an application dismissible block message that have prevented setup from continuing.
  10. CompatBlockedApplicationManualUninstall - 9E912E5F-25A5-4FC0-BEC1-CA0EA5432FF4CompatBlockedApplicationManualUninstall - 9E912E5F-25A5-4FC0-BEC1-CA0EA5432FF4
    • 此规则表明系统中存在没有 "添加/删除程序" 条目的应用程序,并阻止安装程序继续。This rule indicates that an application without an Add/Remove Programs entry, is present on the system and blocking setup from continuing. 这通常需要手动删除与此应用程序关联的文件才能继续操作。This typically requires manual removal of the files associated with this application to continue.
  11. HardblockDeviceOrDriver - ED3AEFA1-F3E2-4F33-8A21-184ADF215B1BHardblockDeviceOrDriver - ED3AEFA1-F3E2-4F33-8A21-184ADF215B1B
    • 这表示在主机操作系统上加载的设备驱动程序与较新的操作系统版本不兼容,并且需要在升级之前将其删除。This indicates a device driver that is loaded on the host OS is not compatible with the newer OS version and needs to be removed prior to the upgrade.
  12. HardblockMismatchedLanguage - 60BA8449-CF23-4D92-A108-D6FCEFB95B45HardblockMismatchedLanguage - 60BA8449-CF23-4D92-A108-D6FCEFB95B45
    • 此规则指示主机操作系统和目标操作系统语言版本不匹配。This rule indicates the host OS and the target OS language editions do not match.
  13. HardblockFlightSigning-598F2802-3E7F-4697-BD18-7A6371C8B2F8HardblockFlightSigning - 598F2802-3E7F-4697-BD18-7A6371C8B2F8
    • 此规则表明目标操作系统是预发布的 Windows 预览体验成员内部版本,并且目标计算机已启用安全启动。This rule indicates the target OS is a pre-release, Windows Insider build, and the target machine has Secure Boot enabled. 如果在计算机上安装了,这将阻止预发布的预发布签名版本。This will block the pre-release signed build from booting if installed on the machine.
  14. DiskSpaceBlockInDownLevel - 6080AFAC-892E-4903-94EA-7A17E69E549EDiskSpaceBlockInDownLevel - 6080AFAC-892E-4903-94EA-7A17E69E549E
    • 此故障表示在升级的低级操作期间系统磁盘空间不足。This failure indicates the system ran out of disk space during the down-level operations of upgrade.
  15. DiskSpaceFailure - 981DCBA5-B8D0-4BA7-A8AB-4030F7A10191DiskSpaceFailure - 981DCBA5-B8D0-4BA7-A8AB-4030F7A10191
    • 此故障表示,首次重新启动到升级后,系统驱动器在某一时刻用尽可用磁盘空间。This failure indicates the system drive ran out of available disk space at some point after the first reboot into the upgrade.
  16. DeviceInstallHang - 37BB1C3A-4D79-40E8-A556-FDA126D40BC6DeviceInstallHang - 37BB1C3A-4D79-40E8-A556-FDA126D40BC6
    • 此失败规则指示在升级的设备安装阶段中检查系统挂起或 bug。This failure rule indicates the system hung or bug checked during the device installation phase of upgrade.
  17. DebugSetupMemoryDump - C7C63D8A-C5F6-4255-8031-74597773C3C6DebugSetupMemoryDump - C7C63D8A-C5F6-4255-8031-74597773C3C6
    • 此脱机规则表示安装期间发生了 bug 检查。This offline only rule indicates a bug check occurred during setup. 如果调试器工具在系统上可用,SetupDiag 将调试内存转储并提供详细信息。If the debugger tools are available on the system, SetupDiag will debug the memory dump and provide details.
  18. DebugSetupCrash - CEEBA202-6F04-4BC3-84B8-7B99AED924B1DebugSetupCrash - CEEBA202-6F04-4BC3-84B8-7B99AED924B1
    • 此脱机规则指示安装程序本身遇到了导致进程内存转储的故障。This offline only rule indicates that setup itself encountered a failure that resulted in a process memory dump. 如果系统上安装了调试器工具,SetupDiag 将调试内存转储并提供进一步的详细信息。If the debugger tools are installed on the system, SetupDiag will debug the memory dump and give further details.
  19. DebugMemoryDump - 505ED489-329A-43F5-B467-FCAAF6A1264CDebugMemoryDump - 505ED489-329A-43F5-B467-FCAAF6A1264C
    • 此脱机规则适用于设置/升级操作期间产生的任何内存 dmp 文件。This offline only rule is for any memory.dmp file that resulted during the setup/upgrade operation. 如果系统上安装了调试器工具,SetupDiag 将调试内存转储并提供进一步的详细信息。If the debugger tools are installed on the system, SetupDiag will debug the memory dump and give further details.
  20. BootFailureDetected - 4FB446C2-D4EC-40B4-97E2-67EB19D1CFB7BootFailureDetected - 4FB446C2-D4EC-40B4-97E2-67EB19D1CFB7
    • 此规则表示更新的特定阶段出现启动故障。This rule indicates a boot failure occurred during a specific phase of the update. 该规则将指示用于诊断目的的故障代码和阶段。The rule will indicate the failure code and phase for diagnostic purposes.
  21. FindDebugInfoFromRollbackLog - 9600EB68-1120-4A87-9FE9-3A4A70ACFC37FindDebugInfoFromRollbackLog - 9600EB68-1120-4A87-9FE9-3A4A70ACFC37
    • 此规则将在导致内存转储的设置/升级过程中发生 bug 检查时确定和提供详细信息,但不要求执行计算机上的调试器程序包。This rule will determine and give details when a bug check occurs during the setup/upgrade process that resulted in a memory dump, but without the requirement of the debugger package being on the executing machine.
  22. AdvancedInstallerFailed - 77D36C96-32BE-42A2-BB9C-AAFFE64FCADCAdvancedInstallerFailed - 77D36C96-32BE-42A2-BB9C-AAFFE64FCADC
    • 查找导致安装失败的严重高级安装程序操作。Finds fatal advanced installer operations that cause setup failures.
  23. FindMigApplyUnitFailure - A4232E11-4043-4A37-9BF4-5901C46FD781FindMigApplyUnitFailure - A4232E11-4043-4A37-9BF4-5901C46FD781
    • 检测导致更新失败的迁移单元故障。Detects a migration unit failure that caused the update to fail. 此规则将输出迁移插件的名称,以及为诊断目的而生成的错误代码。This rule will output the name of the migration plug-in as well as the error code it produced for diagnostic purposes.
  24. FindMigGatherUnitFailure - D04C064B-CD77-4E64-96D6-D26F30B4EE29FindMigGatherUnitFailure - D04C064B-CD77-4E64-96D6-D26F30B4EE29
    • 检测导致更新失败的迁移收集单元失败。Detects a migration gather unit failure that caused the update to fail. 此规则将输出收集单元/插件的名称,以及为诊断目的而生成的错误代码。This rule will output the name of the gather unit/plug-in as well as the error code it produced for diagnostic purposes.
  25. CriticalSafeOSDUFailure - 73566DF2-CA26-4073-B34C-C9BC70DBF043CriticalSafeOSDUFailure - 73566DF2-CA26-4073-B34C-C9BC70DBF043
    • 此规则表明,使用关键动态更新更新 SafeOS 图像时发生错误。This rule indicates a failure occurred while updating the SafeOS image with a critical dynamic update. 它将指示尝试更新 SafeOS 映像以供诊断时出现的阶段和错误代码。It will indicate the phase and error code that occurred while attempting to update the SafeOS image for diagnostic purposes.
  26. UserProfileCreationFailureDuringOnlineApply - 678117CE-F6A9-40C5-BC9F-A22575C78B14UserProfileCreationFailureDuringOnlineApply - 678117CE-F6A9-40C5-BC9F-A22575C78B14
    • 指示在更新的联机应用阶段创建或修改用户配置文件时出现严重故障。Indicates there was a critical failure while creating or modifying a User Profile during the online apply phase of the update. 它将指示与故障相关联的操作和错误代码,以供诊断之用。It will indicate the operation and error code associated with the failure for diagnostic purposes.
  27. WimMountFailure - BE6DF2F1-19A6-48C6-AEF8-D3B0CE3D4549WimMountFailure - BE6DF2F1-19A6-48C6-AEF8-D3B0CE3D4549
    • 此规则表明更新无法装载 wim 文件。This rule indicates the update failed to mount a wim file. 它将显示 wim 文件的名称以及与故障相关联的错误消息和错误代码,以供诊断之用。It will show the name of the wim file as well as the error message and error code associated with the failure for diagnostic purposes.
  28. FindSuccessfulUpgrade - 8A0824C8-A56D-4C55-95A0-22751AB62F3EFindSuccessfulUpgrade - 8A0824C8-A56D-4C55-95A0-22751AB62F3E
    • 确定给定的设置是成功还是不是基于日志。Determines if the given setup was a success or not based off the logs.
  29. FindSetupHostReportedFailure - 6253C04F-2E4E-4F7A-B88E-95A69702F7ECFindSetupHostReportedFailure - 6253C04F-2E4E-4F7A-B88E-95A69702F7EC
    • 通过 setuphost.exe,提供有关升级过程中早期出现的故障的信息Gives information about failures surfaced early in the upgrade process by setuphost.exe
  30. FindDownlevelFailure - 716334B7-F46A-4BAA-94F2-3E31BC9EFA55FindDownlevelFailure - 716334B7-F46A-4BAA-94F2-3E31BC9EFA55
    • 在下一级阶段提供 SetupPlatform 所呈现的失败信息。Gives failure information surfaced by SetupPlatform, later in the down-level phase.
  31. FindAbruptDownlevelFailure - 55882B1A-DA3E-408A-9076-23B22A0472BDFindAbruptDownlevelFailure - 55882B1A-DA3E-408A-9076-23B22A0472BD
    • 当系统在低级别期间出现故障时,将提供上次操作失败信息,但日志刚好突然结束。Gives last operation failure information when the system fails in the down-level, but the log just ends abruptly.
  32. FindSetupPlatformFailedOperationInfo - 307A0133-F06B-4B75-AEA8-116C3B53C2D1FindSetupPlatformFailedOperationInfo - 307A0133-F06B-4B75-AEA8-116C3B53C2D1
    • 当 SetupPlatform 指示严重故障时,将提供最新的阶段和错误消息。Gives last phase and error information when SetupPlatform indicates a critical failure. 此规则将指示与故障相关联的操作和错误(用于诊断目的)。This rule will indicate the operation and error associated with the failure for diagnostic purposes.
  33. FindRollbackFailure - 3A43C9B5-05B3-4F7C-A955-88F991BB5A48FindRollbackFailure - 3A43C9B5-05B3-4F7C-A955-88F991BB5A48
    • 在发生回退时,给出上次操作、失败阶段和错误消息。Gives last operation, failure phase and error information when a rollback occurs.
  34. AdvancedInstallerGenericFailure – 4019550D-4CAA-45B0-A222-349C48E86F71AdvancedInstallerGenericFailure – 4019550D-4CAA-45B0-A222-349C48E86F71
    • 用于匹配一般感知中的 AdvancedInstaller 读/写失败的规则。A rule to match AdvancedInstaller read/write failures in a generic sense. 将输出正在调用的可执行文件以及报告的错误代码和退出代码。Will output the executable being called as well as the error code and exit code reported.
  35. OptionalComponentFailedToGetOCsFromPackage-D012E2A2-99D8-4A8C-BBB2-088B92083D78 (注意:此规则取代了 v 1.10 中存在的 OptionalComponentInstallFailure 规则。OptionalComponentFailedToGetOCsFromPackage – D012E2A2-99D8-4A8C-BBB2-088B92083D78 (NOTE: This rule replaces the OptionalComponentInstallFailure rule present in v1.10.
    • 这与尝试枚举程序包中的组件时特定的可选组件失败相匹配。This matches a specific Optional Component failure when attempting to enumerate components in a package. 将输出程序包名称和错误代码。Will output the package name and error code.
  36. OptionalComponentOpenPackageFailed-22952520-EC89-4FBD-94E0-B67DF88347F6OptionalComponentOpenPackageFailed – 22952520-EC89-4FBD-94E0-B67DF88347F6
    • 当尝试打开 OC 程序包时,匹配特定的可选组件失败。Matches a specific Optional Component failure when attempting to open an OC package. 将输出程序包名称和错误代码。Will output the package name and error code.
  37. OptionalComponentInitCBSSessionFailed – 63340812-9252-45F3-A0F2-B2A4CA5E9317OptionalComponentInitCBSSessionFailed – 63340812-9252-45F3-A0F2-B2A4CA5E9317
    • 匹配高级安装程序服务或组件未在系统上运行或启动的特定故障。Matches a specific failure where the advanced installer service or components aren’t operating or started on the system. 将输出错误代码。Will output the error code.
  38. UserProfileCreationFailureDuringFinalize – C6677BA6-2E53-4A88-B528-336D15ED1A64UserProfileCreationFailureDuringFinalize – C6677BA6-2E53-4A88-B528-336D15ED1A64
    • 在安装程序的 "完成" 阶段中匹配特定用户配置文件创建错误。Matches a specific User Profile creation error during the finalize phase of setup. 将输出失败代码。Will output the failure code.
  39. WimApplyExtractFailure – 746879E9-C9C5-488C-8D4B-0C811FF3A9A8WimApplyExtractFailure – 746879E9-C9C5-488C-8D4B-0C811FF3A9A8
    • 匹配在安装的 wim 提取阶段期间,wim 应用失败。Matches a wim apply failure during wim extraction phases of setup. 将输出扩展、路径和错误代码。Will output the extension, path and error code.
  40. UpdateAgentExpanderFailure – 66E496B3-7D19-47FA-B19B-4040B9FD17E2UpdateAgentExpanderFailure – 66E496B3-7D19-47FA-B19B-4040B9FD17E2
    • 匹配 WU 更新的低级阶段中的 DPX 扩展程序失败。Matches DPX expander failures in the down-level phase of update from WU. 将输出程序包名称、函数、表达式和错误代码。Will output the package name, function, expression and error code.
  41. FindFatalPluginFailure – E48E3F1C-26F6-4AFB-859B-BF637DA49636FindFatalPluginFailure – E48E3F1C-26F6-4AFB-859B-BF637DA49636
    • 匹配 setupplatform 决定对设置致命的任何插件失败。Matches any plug-in failure that setupplatform decides is fatal to setup. 将输出插件名称、操作和错误代码。Will output the plugin name, operation and error code.
  42. AdvancedInstallerFailed - 77D36C96-32BE-42A2-BB9C-AAFFE64FCADCAdvancedInstallerFailed - 77D36C96-32BE-42A2-BB9C-AAFFE64FCADC
    • 指示运行安装程序包时 AdvancedInstaller 中的严重故障,包括正在调用的 .exe、阶段、模式、组件和错误代码。Indicates critical failure in the AdvancedInstaller while running an installer package, includes the .exe being called, the phase, mode, component and error codes.
  43. MigrationAbortedDueToPluginFailure - D07A24F6-5B25-474E-B516-A730085940C9MigrationAbortedDueToPluginFailure - D07A24F6-5B25-474E-B516-A730085940C9
    • 指示导致安装程序中止迁移的迁移插件中的严重故障。Indicates a critical failure in a migration plugin that causes setup to abort the migration. 将提供设置操作、插件名称、插件操作和错误代码。Will provide the setup operation, plug-in name, plug-in action and error code.
  44. DISMAddPackageFailed - 6196FF5B-E69E-4117-9EC6-9C1EAB20A3B9DISMAddPackageFailed - 6196FF5B-E69E-4117-9EC6-9C1EAB20A3B9
    • 指示 DISM 添加程序包操作期间出现严重故障。Indicates a critical failure during a DISM add package operation. 将指定程序包名称、DISM 错误并添加程序包错误代码。Will specify the Package Name, DISM error and add package error code.
  45. PlugInComplianceBlock - D912150B-1302-4860-91B5-527907D08960PlugInComplianceBlock - D912150B-1302-4860-91B5-527907D08960
    • 检测服务器合规性插件中的所有兼容块。 输出块信息和修正。Detects all compat blocks from Server compliance plug-ins. Outputs the block information and remediation.
  46. AdvancedInstallerGenericFailure - 4019550D-4CAA-45B0-A222-349C48E86F71AdvancedInstallerGenericFailure - 4019550D-4CAA-45B0-A222-349C48E86F71
    • 常规感知中的高级安装程序故障中的触发器,用于输出名为、相位、mode、component 和 error 代码的应用程序。Triggers on advanced installer failures in a generic sense, outputting the application called, phase, mode, component and error code.
  47. FindMigGatherApplyFailure - A9964E6C-A2A8-45FF-B6B5-25E0BD71428EFindMigGatherApplyFailure - A9964E6C-A2A8-45FF-B6B5-25E0BD71428E
    • 当迁移引擎在收集或应用操作失败时显示错误。Shows errors when the migration Engine fails out on a gather or apply operation. 指明迁移对象 (文件或注册表路径) ,迁移Indicates the Migration Object (file or registry path), the Migration
  48. OptionalComponentFailedToGetOCsFromPackage - D012E2A2-99D8-4A8C-BBB2-088B92083D78OptionalComponentFailedToGetOCsFromPackage - D012E2A2-99D8-4A8C-BBB2-088B92083D78
    • 指示 (OC) 迁移操作的可选组件无法枚举 OC 程序包中的可选组件。Indicates the optional component (OC) migration operation failed to enumerate optional components from an OC Package. 输出程序包名称和错误代码。Outputs the package name and error code.
  49. OptionalComponentOpenPackageFailed-22952520-EC89-4FBD-94E0-B67DF88347F6OptionalComponentOpenPackageFailed - 22952520-EC89-4FBD-94E0-B67DF88347F6
    • 指示 "可选组件迁移" 操作无法打开可选组件包。Indicates the optional component migration operation failed to open an optional component Package. 输出程序包名称和错误代码。Outputs the package name and error code.
  50. OptionalComponentInitCBSSessionFailed - 63340812-9252-45F3-A0F2-B2A4CA5E9317OptionalComponentInitCBSSessionFailed - 63340812-9252-45F3-A0F2-B2A4CA5E9317
    • 指示低级系统上的服务堆栈损坏。Indicates corruption in the servicing stack on the down-level system. 输出尝试初始化现有操作系统上的服务组件时遇到的错误代码。Outputs the error code encountered while trying to initialize the servicing component on the existing OS.
  51. DISMproviderFailure - D76EF86F-B3F8-433F-9EBF-B4411F8141F4DISMproviderFailure - D76EF86F-B3F8-433F-9EBF-B4411F8141F4
    • 在关键操作中,当 DISM 提供程序 (插件) 失败时,将引发触发器。Triggers when a DISM provider (plug-in) fails in a critical operation. 将文件输出 (插件名称) 、名为 + 错误代码的函数以及来自提供程序的错误消息。Outputs the file (plug-in name), function called + error code, and error message from the provider.
  52. SysPrepLaunchModuleFailure - 7905655C-F295-45F7-8873-81D6F9149BFDSysPrepLaunchModuleFailure - 7905655C-F295-45F7-8873-81D6F9149BFD
    • 指示 sysPrep 插件在关键操作中失败。Indicates a sysPrep plug-in has failed in a critical operation. 指示插件名称、操作名称和错误代码。Indicates the plug-in name, operation name and error code.
  53. UserProvidedDriverInjectionFailure - 2247C48A-7EE3-4037-AFAB-95B92DE1D980UserProvidedDriverInjectionFailure - 2247C48A-7EE3-4037-AFAB-95B92DE1D980
    • 通过命令行输入 (提供给安装程序的驱动程序) 以某种方式失败。A driver provided to setup (via command line input) has failed in some way. 输出驱动程序安装功能和错误代码。Outputs the driver install function and error code.
  54. PlugInComplianceBlock - D912150B-1302-4860-91B5-527907D08960PlugInComplianceBlock - D912150B-1302-4860-91B5-527907D08960
    • 这些仅适用于服务器升级,将输出合规性块和所需的补救措施。These are for server upgrades only, will output the compliance block and remediation required.
  55. PreReleaseWimMountDriverFound - 31EC76CC-27EC-4ADC-9869-66AABEDB56F0PreReleaseWimMountDriverFound - 31EC76CC-27EC-4ADC-9869-66AABEDB56F0
    • 捕获在系统上注册了无法识别的 wimmount.sys 驱动程序导致的故障。Captures failures due to having an unrecognized wimmount.sys driver registered on the system.
  56. WinSetupBootFilterFailure - C073BFC8-5810-4E19-B53B-4280B79E096CWinSetupBootFilterFailure - C073BFC8-5810-4E19-B53B-4280B79E096C
    • 检测内核模式文件操作中的失败。Detects failures in the kernel mode file operations.
  57. WimMountDriverIssue-565B60DD-5403-4797-AE3E-BC5CB972FBAEWimMountDriverIssue - 565B60DD-5403-4797-AE3E-BC5CB972FBAE
    • 检测在系统上 WimMount.sys 注册失败的问题。Detects failures in WimMount.sys registration on the system.
  58. DISMImageSessionFailure - 61B7886B-10CD-4C98-A299-B987CB24A11CDISMImageSessionFailure - 61B7886B-10CD-4C98-A299-B987CB24A11C
    • 当 DISM 无法成功启动图像会话时捕获故障信息。Captures failure information when DISM fails to start an image session successfully.
  59. FindEarlyDownlevelError - A4CE4FC9-5E10-4BB1-8ECE-3B29EB9D7C52FindEarlyDownlevelError - A4CE4FC9-5E10-4BB1-8ECE-3B29EB9D7C52
    • 在调用安装平台之前检测低级别阶段中的故障。Detects failures in down-level phase before setup platform is invoked.
  60. FindSPFatalError - A4028172-1B09-48F8-AD3B-86CDD7D55852FindSPFatalError - A4028172-1B09-48F8-AD3B-86CDD7D55852
    • 在设置平台遇到致命错误时捕获故障信息。Captures failure information when setup platform encounters a fatal error.

发行说明Release notes

08/08/2019-SetupDiag v 1.6.0.42 以60规则发布,作为从下载中心提供的独立工具。08/08/2019 - SetupDiag v1.6.0.42 is released with 60 rules, as a standalone tool available from the Download Center.

  • 日志检测性能得到改进。Log detection performance is improved. 过去一分钟最多需要10秒钟的时间。What used to take up to a minute should take around 10 seconds or less.
  • 已将设置操作和设置阶段信息添加到结果日志和注册表信息。Added Setup Operation and Setup Phase information to both the results log and the registry information.
    • 这是安装发生故障时安装程序所处的最后一个操作和阶段。This is the last Operation and Phase that Setup was in when the failure occurred.
  • 添加了详细的设置操作和设置阶段信息 (和计时) 在指定/verbose 时输出日志。Added detailed Setup Operation and Setup Phase information (and timing) to output log when /verbose is specified.
    • 注意,如果发现的问题是兼容性块,则尚未安装操作或阶段信息仍存在,因此不可用。Note, if the issue found is a compat block, no Setup Operation or Phase info exists yet and therefore won’t be available.
  • 将更多信息添加到注册表输出。Added more info to the Registry output.
    • 可用的详细 "FailureData" 信息。Detailed ‘FailureData’ info where available. 示例: "AppName = MyBlockedApplication" 或 "磁盘空间 = 6603" (以 MB 为单位) Example: “AppName = MyBlockedApplication” or “DiskSpace = 6603” (in MB)
      • 发现特定于故障的 "键 = 值" 数据。“Key = Value” data specific to the failure found.
    • 已添加 "UpgradeStartTime"、"UpgradeEndTime" 和 "UpgradeElapsedTime"Added ‘UpgradeStartTime’, ‘UpgradeEndTime’ and ‘UpgradeElapsedTime’
    • 添加了 "SetupDiagVersion"、"DateTime" (以指示在系统上执行 SetupDiag 的时间) 、"TargetOSVersion"、"HostOSVersion" 等 .。。Added ‘SetupDiagVersion’, ‘DateTime’ (to indicate when SetupDiag was executed on the system), ‘TargetOSVersion’, ‘HostOSVersion’ and more…

06/19/2019-SetupDiag v 1.5.0.0 以60规则发布,作为从下载中心提供的独立工具。06/19/2019 - SetupDiag v1.5.0.0 is released with 60 rules, as a standalone tool available from the Download Center.

  • 每个用户请求的所有日期和时间输出都将更新为本地化格式。All date and time outputs are updated to localized format per user request.
  • 已将设置操作和阶段信息添加到/verbose 日志。Added setup Operation and Phase information to /verbose log.
  • 已将上次设置操作和上次设置阶段信息添加到最有意义的大多数规则 (请参阅下面的新输出) 。Added last Setup Operation and last Setup Phase information to most rules where it make sense (see new output below).
  • 搜索 setupact 以确定要分析的正确日志的性能提高。Performance improvement in searching setupact.logs to determine correct log to parse.
  • 将 SetupDiag 版本号添加到文本报表 (xml 和 json 始终) 。Added SetupDiag version number to text report (xml and json always had it).
  • 已为每个用户请求添加 "无匹配" 的 xml 和 json 报告。Added "no match" reports for xml and json per user request.
  • 为便于阅读,设置了格式的 Json 输出。Formatted Json output for easy readability.
  • 搜索安装日志时的性能改进;这应该比现在更快。Performance improvements when searching for setup logs; this should be much faster now.
  • 添加了7条新规则: PlugInComplianceBlock、PreReleaseWimMountDriverFound、WinSetupBootFilterFailure、WimMountDriverIssue、DISMImageSessionFailure、FindEarlyDownlevelError 和 FindSPFatalError。Added 7 new rules: PlugInComplianceBlock, PreReleaseWimMountDriverFound, WinSetupBootFilterFailure, WimMountDriverIssue, DISMImageSessionFailure, FindEarlyDownlevelError, and FindSPFatalError. 有关详细信息,请参阅上面的 " 规则 " 部分。See the Rules section above for more information.
  • 诊断信息现在将在HKLM\SYSTEM\Setup\MoSetup\Volatile\SetupDiag输出到注册表Diagnostic information is now output to the registry at HKLM\SYSTEM\Setup\MoSetup\Volatile\SetupDiag
    • 已添加 /AddReg 命令以切换注册表输出。The /AddReg command was added to toggle registry output. 默认情况下,此设置在脱机模式下处于关闭状态,并且默认情况下在联机模式下处于关闭状态。This setting is off by default for offline mode, and on by default for online mode. 此命令对联机模式无效,并启用脱机模式的注册表输出。The command has no effect for online mode and enables registry output for offline mode.
    • 只要再次运行 SetupDiag,并将其替换为当前数据,就会删除此注册表项,因此始终保持最新。This registry key is deleted as soon as SetupDiag is run a second time, and replaced with current data, so it’s always up to date.
    • 当调用新的更新实例时,此注册表项也会被删除。This registry key also gets deleted when a new update instance is invoked.
    • 有关示例,请参阅 示例注册表项For an example, see Sample registry key.

05/17/2019-SetupDiag v 1.4.1.0 以53规则发布,作为从下载中心提供的独立工具。05/17/2019 - SetupDiag v1.4.1.0 is released with 53 rules, as a standalone tool available from the Download Center.

  • 此版本 dds 能够查找和诊断重置和恢复失败 (按钮重置) 。This release dds the ability to find and diagnose reset and recovery failures (Push Button Reset).

12/18/2018-SetupDiag v 1.4.0.0 以53规则发布,作为从下载中心提供的独立工具。12/18/2018 - SetupDiag v1.4.0.0 is released with 53 rules, as a standalone tool available from the Download Center.

  • 此版本包括规则处理性能方面的重大改进: ~ 3 倍的规则处理性能!This release includes major improvements in rule processing performance: ~3x faster rule processing performance!
    • FindDownlevelFailure 规则最高可快10倍。The FindDownlevelFailure rule is up to 10x faster.
  • 已添加新规则以分析升级到 Windows 10 版本1809的失败。New rules have been added to analyze failures upgrading to Windows 10 version 1809.
  • 当规则匹配指示此类型的失败时,可使用新的帮助链接来解决下层操作系统上的服务堆栈故障。A new help link is available for resolving servicing stack failures on the down-level OS when the rule match indicates this type of failure.
  • 已删除指定/Mode 参数的需要。Removed the need to specify /Mode parameter. 现在,如果你指定/LogsPath,它将自动假设脱机模式。Now if you specify /LogsPath, it automatically assumes offline mode.
  • 已针对多个规则进行了一些功能和输出改进。Some functional and output improvements were made for several rules.

07/16/2018-SetupDiag v 1.3.1 以44规则发布,作为从下载中心提供的独立工具。07/16/2018 - SetupDiag v1.3.1 is released with 44 rules, as a standalone tool available from the Download Center.

  • 此版本修复了在生成 setupmem 文件但未安装调试器二进制文件的计算机上以联机模式运行 SetupDiag 时可能出现的问题。This release fixes a problem that can occur when running SetupDiag in online mode on a computer that produces a setupmem.dmp file, but does not have debugger binaries installed.

07/10/2018-SetupDiag v 1.30 以44规则发布,作为从下载中心提供的独立工具。07/10/2018 - SetupDiag v1.30 is released with 44 rules, as a standalone tool available from the Download Center.

  • 针对过匹配的插件规则的 Bug 修复。Bug fix for an over-matched plug-in rule. 该规则现在将仅正确匹配关键 (设置失败) 插件问题。The rule will now correctly match only critical (setup failure) plug-in issues.
  • 新增功能:能够以 JSON 和 XML 格式输出日志。New feature: Ability to output logs in JSON and XML format.
    • 使用 "/Format: xml" 或 "/Format: json" 命令行参数指定新的输出格式。Use "/Format:xml" or "/Format:json" command line parameters to specify the new output format. 请参阅本主题底部的 示例日志See sample logs at the bottom of this topic.
    • 如果省略 "/Format: xml" 或 "/Format: json" 参数,日志输出格式将默认为 "文本"。If the “/Format:xml” or “/Format:json” parameter is omitted, the log output format will default to text.
  • 新增功能:在可能的情况下,"规则输出" 中提供了特定说明以修复标识的错误。New Feature: Where possible, specific instructions are now provided in rule output to repair the identified error. 例如,提供了用于修正已知阻塞问题(如卸载不兼容的应用或释放系统驱动器空间)的说明。For example, instructions are provided to remediate known blocking issues such as uninstalling an incompatible app or freeing up space on the system drive.
  • 添加了3条新规则: AdvancedInstallerFailed、MigrationAbortedDueToPluginFailure、DISMAddPackageFailed。3 new rules added: AdvancedInstallerFailed, MigrationAbortedDueToPluginFailure, DISMAddPackageFailed.

05/30/2018-SetupDiag v 1.20 以41规则发布,作为从下载中心提供的独立工具。05/30/2018 - SetupDiag v1.20 is released with 41 rules, as a standalone tool available from the Download Center.

  • 已修复联机模式中的设备安装失败检测中的 bug。Fixed a bug in device install failure detection in online mode.
  • 已更改 SetupDiag 以在没有 setupact 实例的情况下工作。Changed SetupDiag to work without an instance of setupact.log. 以前,SetupDiag 必须至少有一个要运行的 setupact。Previously, SetupDiag required at least one setupact.log to operate. 此更改使工具能够分析调用 SetupHost 之前发生的更新失败。This change enables the tool to analyze update failures that occur prior to calling SetupHost.
  • 将对遥测进行重构,仅发送规则名称和 GUID (或 "NoRuleMatched" (如果没有匹配的规则)) 和 Setup360 ReportId。Telemetry is refactored to only send the rule name and GUID (or “NoRuleMatched” if no rule is matched) and the Setup360 ReportId. 此更改确保在规则处理期间数据的隐私。This change assures data privacy during rule processing.

05/02/2018-使用34规则释放 SetupDiag v 1.10,作为从下载中心提供的独立工具。05/02/2018 - SetupDiag v1.10 is released with 34 rules, as a standalone tool available from the Download Center.

  • 已添加性能增强以更快地处理规则。A performance enhancement has been added to result in faster rule processing.
  • 规则输出现包含支持文章(如果适用)的链接。Rules output now includes links to support articles, if applicable.
  • SetupDiag 现在提供正在处理的文件的路径和名称。SetupDiag now provides the path and name of files that it is processing.
  • 现在,只需单击 SetupDiag,然后检查输出日志文件即可运行它。You can now run SetupDiag by simply clicking on it and then examining the output log file.
  • 输出日志文件现在始终创建,无论规则是否匹配。An output log file is now always created, whether or not a rule was matched.

03/30/2018-SetupDiag v 1.00 以26个规则发布,作为从下载中心提供的独立工具。03/30/2018 - SetupDiag v1.00 is released with 26 rules, as a standalone tool available from the Download Center.

示例日志Sample logs

文本日志示例Text log sample

Matching Profile found: OptionalComponentOpenPackageFailed - 22952520-EC89-4FBD-94E0-B67DF88347F6
System Information:
    Machine Name = Offline
    Manufacturer = MSI
    Model = MS-7998
    HostOSArchitecture = x64
    FirmwareType = PCAT
    BiosReleaseDate = 20160727000000.000000+000
    BiosVendor = BIOS Date: 07/27/16 10:01:46 Ver: V1.70
    BiosVersion = 1.70
    HostOSVersion = 10.0.15063
    HostOSBuildString = 15063.0.amd64fre.rs2_release.170317-1834
    TargetOSBuildString = 10.0.16299.15 (rs3_release.170928-1534)
    HostOSLanguageId = 2057
    HostOSEdition = Core
    RegisteredAV = Windows Defender,
    FilterDrivers = WdFilter,wcifs,WIMMount,luafv,Wof,FileInfo,
    UpgradeStartTime = 3/21/2018 9:47:16 PM
    UpgradeEndTime = 3/21/2018 10:02:40 PM
    UpgradeElapsedTime = 00:15:24
    ReportId = dd4db176-4e3f-4451-aef6-22cf46de8bde

Error: SetupDiag reports Optional Component installation failed to open OC Package. Package Name: Foundation, Error: 0x8007001F
Recommend you check the "Windows Modules Installer" service (Trusted Installer) is started on the system and set to automatic start, reboot and try the update again.  Optionally, you can check the status of optional components on the system (search for Windows Features), uninstall any unneeded optional components, reboot and try the update again.
Error: SetupDiag reports down-level failure, Operation: Finalize, Error: 0x8007001F - 0x50015
Refer to https://docs.microsoft.com/windows/deployment/upgrade/upgrade-error-codes for error information.

XML 日志示例XML log sample

<?xml version="1.0" encoding="utf-16"?>
<SetupDiag xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://docs.microsoft.com/windows/deployment/upgrade/setupdiag">
  <Version>1.6.0.0</Version>
  <ProfileName>FindSPFatalError</ProfileName>
  <ProfileGuid>A4028172-1B09-48F8-AD3B-86CDD7D55852</ProfileGuid>
  <SystemInfo>
    <MachineName>Offline</MachineName>
    <Manufacturer>Gigabyte Technology Co., Ltd.</Manufacturer>
    <Model>X470 AORUS ULTRA GAMING</Model>
    <HostOSArchitecture>1033</HostOSArchitecture>
    <FirmwareType>UEFI</FirmwareType>
    <BiosReleaseDate>20180808000000.000000+000</BiosReleaseDate>
    <BiosVendor>F3</BiosVendor>
    <BiosVersion />
    <HostOSVersion>10.0.18908</HostOSVersion>
    <HostOSBuildString>18908.1000.amd64fre.rs_prerelease.190524-1658</HostOSBuildString>
    <TargetOSBuildString>10.0.18912.1001 (rs_prerelease.190601-1739)</TargetOSBuildString>
    <HostOSLanguageId />
    <HostOSEdition>Professional</HostOSEdition>
    <RegisteredAV>Windows Defender</RegisteredAV>
    <FilterDrivers />
    <UpgradeStartTime>2019-06-06T21:19:10</UpgradeStartTime>
    <UpgradeElapsedTime />
    <UpgradeEndTime>2019-06-06T22:21:49</UpgradeEndTime>
    <RollbackStartTime>0001-01-01T00:00:00</RollbackStartTime>
    <RollbackEndTime>0001-01-01T00:00:00</RollbackEndTime>
    <RollbackElapsedTime />
    <FinalizeStartTime>0001-01-01T00:00:00</FinalizeStartTime>
    <PostOOBESuccessTime>0001-01-01T00:00:00</PostOOBESuccessTime>
    <TotalOfflineTime />
    <CommercialId>Offline</CommercialId>
    <CV>MgUweCZk90KdwUiZ</CV>
    <SetupReportId>F21F8FB6-00FD-4349-84FB-2AC75F389E73</SetupReportId>
    <ReportId>F21F8FB6-00FD-4349-84FB-2AC75F389E73</ReportId>
  </SystemInfo>
  <LogErrorLine>2019-06-06 21:47:11, Error                 SP     Error converting install time 5/2/2019 to structure[gle=0x00000057]</LogErrorLine>
  <FailureData>
Error: SetupDiag reports Fatal Error.
Last Setup Phase = Downlevel
Last Setup Operation: Gather data, scope: EVERYTHING
Error: 0x00000057</FailureData>
  <FailureData>LogEntry: 2019-06-06 21:47:11, Error                 SP     Error converting install time 5/2/2019 to structure[gle=0x00000057]</FailureData>
  <FailureData>LogEntry: 2019-06-06 21:47:11, Error                 SP     Error converting install time 5/2/2019 to structure[gle=0x00000057]</FailureData>
  <FailureData>
Refer to "https://docs.microsoft.com/windows/desktop/Debug/system-error-codes" for error information.</FailureData>
  <FailureDetails>Err = 0x00000057, LastOperation = Gather data, scope: EVERYTHING, LastPhase = Downlevel</FailureDetails>
</SetupDiag>

JSON 日志示例JSON log sample

{
    "Version":"1.6.0.0",
    "ProfileName":"FindSPFatalError",
    "ProfileGuid":"A4028172-1B09-48F8-AD3B-86CDD7D55852",
    "SystemInfo":{
        "BiosReleaseDate":"20180808000000.000000+000",
        "BiosVendor":"F3",
        "BiosVersion":"F3",
        "CV":"MgUweCZk90KdwUiZ",
        "CommercialId":"Offline",
        "FilterDrivers":"",
        "FinalizeStartTime":"\/Date(-62135568000000-0800)\/",
        "FirmwareType":"UEFI",
        "HostOSArchitecture":"x64",
        "HostOSBuildString":"18908.1000.amd64fre.rs_prerelease.190524-1658",
        "HostOSEdition":"Professional",
        "HostOSLanguageId":"",
        "HostOSVersion":"",
        "MachineName":"Offline",
        "Manufacturer":"Gigabyte Technology Co., Ltd.",
        "Model":"X470 AORUS ULTRA GAMING",
        "PostOOBESuccessTime":"\/Date(-62135568000000-0800)\/",
        "RegisteredAV":"Windows Defender",
        "ReportId":"F21F8FB6-00FD-4349-84FB-2AC75F389E73",
        "RollbackElapsedTime":"PT0S",
        "RollbackEndTime":"\/Date(-62135568000000-0800)\/",
        "RollbackStartTime":"\/Date(-62135568000000-0800)\/",
        "SetupReportId":"F21F8FB6-00FD-4349-84FB-2AC75F389E73",
        "TargetOSArchitecture":null,
        "TargetOSBuildString":"10.0.18912.1001 (rs_prerelease.190601-1739)",
        "TotalOfflineTime":"PT0S",
        "UpgradeElapsedTime":"PT1H2M39S",
        "UpgradeEndTime":"\/Date(1559884909000-0700)\/",
        "UpgradeStartTime":"\/Date(1559881150000-0700)\/"
    },
    "LogErrorLine":"2019-06-06 21:47:11, Error                 SP     Error converting install time 5\/2\/2019 to structure[
        gle=0x00000057
    ]",
    "FailureData":[
        "\u000aError: SetupDiag reports Fatal Error.\u000aLast Setup Phase = Downlevel\u000aLast Setup Operation: Gather data, scope: EVERYTHING\u000aError: 0x00000057",
        "LogEntry: 2019-06-06 21:47:11, Error                 SP     Error converting install time 5\/2\/2019 to structure[
            gle=0x00000057
        ]",
        "LogEntry: 2019-06-06 21:47:11, Error                 SP     Error converting install time 5\/2\/2019 to structure[
            gle=0x00000057
        ]",
        "\u000aRefer to \"https:\/\/docs.microsoft.com\/en-us\/windows\/desktop\/Debug\/system-error-codes\" for error information."
    ],
    "FailureDetails":"Err = 0x00000057, LastOperation = Gather data, scope: EVERYTHING, LastPhase = Downlevel",
    "DeviceDriverInfo":null,
    "Remediation":[
        
    ],
    "SetupPhaseInfo":null,
    "SetupOperationInfo":null
}

示例注册表项Sample registry key

Addreg 示例

相关主题Related topics

解决 Windows 10 升级错误:面向 IT 专业人士的技术信息Resolve Windows 10 upgrade errors: Technical information for IT Pros