安装更新与部署

安装Windows更新时0x800F0922错误代码 - Windows Server

· 52CE 我爱测

本文可帮助解决安装Windows更新时发生的0x800F0922(CBS\E\INSTALLERS\FAILED)错误。 安装Windows更新时,会收到0x800F0922(CBS\E\INSTALLERS\FAILED)错误。 在 CBS.log 文件中,会看到以下条目: 在任务计划程序事件日志中,会看到以下条目: 出现此问题是因为计划任务 SecureBootEncodeUEFI 已损坏。 删除暂存程序包并清理已损坏的任务 若要解决此问题,请执行以下

本文可帮助解决安装Windows更新时发生的0x800F0922(CBS_E_INSTALLERS_FAILED)错误。

安装Windows更新时,会收到0x800F0922(CBS_E_INSTALLERS_FAILED)错误。

在 CBS.log 文件中,会看到以下条目:

Info,    CSI    00000c61 Begin executing advanced installer phase 38 index 2480 (sequence 2519)
    Old component: [l:0]''
    New component: [l:168 ml:169]'Microsoft-OneCore-SecureBootEncodeUEFI-Task, Culture=neutral, Version=10.0.14393.6078, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=amd64, versionScope=NonSxS'
    Install mode: install
    Smart installer: FALSE
    Installer ID: {<InstallerID>}
    Installer name: 'Task Scheduler'
…
Error    CSI    00000c63 (F) Logged @: [l:26 ml:27]'JobsHandler::Install enter'
Error    CSI    00000c64 (F) Logged @: [l:34 ml:35]'JobsHandler::Install type=4 pass=4'
Error    CSI    00000c65 (F) Logged @: [l:36 ml:37]'IsScheduleServiceRunning queries SCM'
Error    CSI    00000c66 (F) Logged @: [l:37 ml:38]'IsScheduleServiceRunning returns true'
Error    CSI    00000c67 (F) Logged @: [l:23 ml:24]'InstallTaskOnline enter'
Error    CSI    00000c68 (F) Logged @: [l:49 ml:50]'InstallTaskOnline: RegisterTask failed 0x80070002'
Error    CSI    00000c69 (F) Logged @: [l:70 ml:71]'WmiCmiPlugin jobshandler.cpp(237): RegisterTask failed. HR=0x80070002.'
Error    CSI    00000c6a (F) Logged @: [l:57 ml:58]'WmiCmiPlugin plgutil.cpp(217): fnc failed. HR=0x80070002.'
Error    CSI    00000c6b (F) Logged @: [l:74 ml:75]'WmiCmiPlugin jobshandler.cpp(364): ForEachElementIn failed. HR=0x80070002.'
Error    CSI    00000c6c (F) Logged @: [l:86 ml:87]'WmiCmiPlugin jobshandler.cpp(836): InstallManifestSectionOnline failed. HR=0x80070002.'
Error    CSI    00000c6d@2023/8/7:15:43:34.530 (F) CMIADAPTER: Inner Error Message from AI HRESULT = HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
 ['The system cannot find the file specified.']
Error    CSI    00000c6e@ (F) CMIADAPTER: AI failed. HRESULT = HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND)
…
Error    CSI    00000c6f@ (F) CMIADAPTER: Exiting with HRESULT code = HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND). 
 
Error      [0x018003] CSI    00000c71 (F) Failed execution of queue item Installer: Task Scheduler ({<InstallerID>}) with HRESULT HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND).  Failure will not be ignored: A rollback will be initiated after all the operations in the installer queue are completed; installer is reliable 
Error CBS    Startup: Failed to process advanced operation queue, startupPhase: 0.  A rollback transaction will be created. [HRESULT = 0x800f0922 - CBS_E_INSTALLERS_FAILED] 
Info  CBS    Progress: UI message updated. Operation type: Update. Stage: 1 out of 1. Rollback. 
Info  CBS    Setting original failure status: 0x800f0922, last forward execute state: CbsExecuteStateResolvePending

在任务计划程序事件日志中,会看到以下条目:

Log Name:      Microsoft-Windows-TaskScheduler/Operational
Source:        Microsoft-Windows-TaskScheduler
Event ID:      146
Task Category: Task loading at service startup failed
Level:         Error
Keywords:      
User:          SYSTEM
Description:
Task Scheduler failed to load task "\Microsoft\Windows\PI\SecureBootEncodeUEFI" at service startup. Additional Data: Error Value: 2147942402.

出现此问题是因为计划任务 SecureBootEncodeUEFI 已损坏。

删除暂存程序包并清理已损坏的任务

若要解决此问题,请执行以下步骤:

  1. 通过运行 get-packages cmdlet 查找暂存更新包:

    Dism /english /online /get-packages /format:table | findstr /i "Staged"
    
  2. 通过运行 remove-package cmdlet 删除暂存更新包。 例如:

    Dism /online /remove-package /PackageName:Package_for_RollupFix~31bf3856ad364e35~amd64~~14393XXXX
    
  3. 通过运行以下 cmdlet 识别 SecureBootEncodeUEFI GUID:

    reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Microsoft\Windows\PI\SecureBootEncodeUEFI" /v ID
    

    cmdlet 输出如下所示:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Microsoft\Windows\PI\SecureBootEncodeUEFI
    ID    REG_SZ    {<GUID>}
    
  4. 运行以下 cmdlet 以删除 SecureBootEncodeUEFI 注册表值:

    注意

    你需要替换步骤 3 返回的 {GUID} 值。

    reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Maintenance\{GUID}" /f
    reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Plain\{GUID}" /f
    reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tasks\{GUID}" /f
    reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree\Microsoft\Windows\PI\SecureBootEncodeUEFI" /f
    

有关如何清理损坏的任务的详细信息,请参阅 MS10-092:任务计划程序中的漏洞可能允许提升权限。

资料来源与适用范围

资料来源
微软官方中文故障文档
适用范围
按正文的 Windows / Windows Server 适用版本;保留原文兼容性要求
内容语言
中文;命令、路径和错误标识保留技术原文
本地收录日期
2026-10-26
授权说明
CC BY 4.0

正文与所需资源由本站本地存储。查看来源及更新记录 ↗

请按适用版本和实际日志确认原因;本站没有对每一种系统或设备逐项执行文中的操作。