修复 Windows 资源保护无法启动修复服务错误的 4 种方法

使用命令提示符中的 sfc /scannow 命令激活的系统文件检查器工具是一个非常有用的系统修复实用程序。它会扫描所有受保护的系统文件,并用位于系统中的缓存副本替换损坏的文件。但是,在运行此命令时,您可能会遇到一条错误消息,内容为“Windows 资源保护无法启动修复服务”。

由于权限问题或 Windows TrustedInstaller 出现故障,通常会发生此错误。因此,让我们通过几个简单的步骤探索如何解决此错误。

为什么 SFC Scannow 不起作用?

要使系统文件检查器工作,Windows TrustedInstaller 必须是可操作的。 Windows TrustedInstaller 是一项启用 Windows 更新和其他系统组件的安装、删除和修改所需的服务。

默认情况下,TrustedInstaller 控制 Windows 资源保护 (WRP) 工具。 WRP 可防止未经授权的修改,包括对基本系统文件、文件夹和注册表项的更改。它还处理您尝试使用的“sfc /scannow”命令。

因此,当 TrustedInstaller 出现故障时,依赖于它的其他服务也将停止工作。这意味着 WRP 和系统文件检查器工具都将无法正常工作。虽然没有针对此问题的灵丹妙药解决方案,但我们列出了一些故障排除步骤,您可以按照这些步骤来修复此错误。

1. 重新启动 Windows TrustedInstaller(Windows 模块安装程序)

如果 Windows TrustedInstaller 未运行或出现故障,快速重启该服务有助于解决错误。您可以轻松地从 Windows 服务控制台重新启动它。这是如何做到的。

  1. Win + R打开运行框。
  2. 然后,键入services.msc并单击确定以打开服务控制台。
  3. 服务控制台窗口中,找到Windows 模块安装程序。
  4. 右键单击该服务并选择Properties
  5. 在出现的“属性”窗口中,将“启动类型”设置为“手动”
  6. 如果服务未运行,请单击“服务状态”部分下的“开始”按钮。
  7. 单击应用确定以保存更改。关闭服务控制台并检查您是否可以运行系统文件检查器工具而不会出现任何错误。

2. 使用命令提示符启动 TrustedInstaller

如果从服务控制台重新启动 Windows 模块安装程序不起作用,您可以使用命令提示符重新启动服务。这是如何做到的。

  1. 在 Windows 搜索栏中键入cmd 。在搜索结果中,右键单击Command Prompt并单击Run as Administrator 。当用户帐户控制提示时单击
  2. 在命令提示符窗口中,键入以下命令并按回车键执行:
     sc config trustedinstaller start= auto
  3. 此命令会将 Windows 模块安装程序服务启动类型设置为自动。成功执行后,您将在屏幕上看到ChangeServiceConfig SUCCESS消息。
  4. 接下来,输入以下命令以重新启动 TrustedInstaller 服务:
     net start trustedinstaller
  5. 成功执行后,运行 sfc /scannow 命令并检查错误是否已解决。

3. 在安全模式下运行 SFC Scannow

在安全模式下,Windows 以最小状态启动,加载一组有限的文件和驱动器。安全模式可用于确定第三方应用程序或服务冲突是否导致您的系统出现问题。

如果您认为第三方程序与系统文件检查器工具冲突并触发 Windows 资源保护无法启动修复服务错误,请在安全启动模式下运行 sfc /scannow 命令以验证问题。

在安全模式下运行系统文件检查器:

  1. Win + R打开运行。
  2. 键入msconfig.msc并单击“确定”以打开“系统配置”窗口。
  3. 在出现的窗口中,打开Boot选项卡。
  4. 在启动选项下,选中安全启动选项。然后,选择最小选项。
  5. 单击应用确定以保存更改。
  6. 如果您想立即重新启动安全模式,请单击重新启动按钮。如果没有,请单击退出而不重新启动,保存并关闭打开的应用程序,然后重新启动您的 PC。

重新启动后,您的系统将以安全模式启动,仅运行基本的 Windows 服务。

现在,打开命令提示符并运行sfc /scannow命令。如果该命令运行没有任何错误,则您系统上安装的第三方应用程序很可能与 Windows 资源保护产生冲突,从而触发错误。

要禁用安全启动,请启动系统配置,打开启动选项卡并取消选中启动选项下的安全启动。然后,单击应用重新启动您的 PC。

4. 向注册表编辑器添加 TrustedInstaller 可扩展字符串值

如果您不介意使用 Windows 注册表编辑器,则可以通过向注册表添加新的可扩展字符串值来修复此错误。也就是说,对注册表项的不正确修改可能会使您的系统变砖,因此请确保在继续安装之前创建 Windows 注册表备份

此外,创建一个系统还原点。这将帮助您撤消系统级更改并将您的 PC 恢复到其工作状态。备份到位后,请按照以下步骤操作。

此过程涉及查找 TrustedInstaller ID、子文件夹名称,并在注册表编辑器中创建新的可扩展字符串值。为了更容易理解,我们将这些步骤分为两部分。

4.1 在文件资源管理器中查找 TrustedInstaller ID 和子文件夹名称

  1. Win + E打开文件资源管理器并导航到以下位置:
     C:WindowsServicingVersion
  2. 您将看到一个名为10.0.19041.1XXX的文件夹。这是您的 TrustedInstaller ID。将 ID/名称复制到剪贴板或粘贴到记事本文档中,因为您将继续使用它。
    find-trustedinstaller-id
  3. 接下来,导航到以下位置:
     C:WindowsWinSxS
  4. 在这里,根据您使用的 CPU,找到这些子文件夹之一。
     x86_microsoft-windows-servicingstack_31bf3856ad364e35_{TrustedInstaller ID} (32bit Windows)
    amd64_microsoft-windows-servicingstack_31bf3856ad364e35_{TrustedInstaller ID} (64bit Windows)
  5. 在上述子文件夹名称中, {TrustedInstaller ID}是您在步骤 2 中记下的文件夹名称。
    受信任的安装程序子文件夹
  6. 还将文件夹名称和路径复制到记事本文件中。

4.2 在注册表编辑器中创建可扩展字符串值

现在您已获得所需信息,是时候在注册表编辑器中创建可扩展字符串值了。这是如何做到的。

  1. Win + R打开运行。
  2. 键入regedit并单击确定以打开注册表编辑器。
  3. 在注册表编辑器中,导航到以下位置。您可以复制并粘贴注册表编辑器地址栏中的路径以进行快速导航:
     HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionComponent Based ServicingVersion
  4. 选择并右键单击 Versions 子项。选择新建 > 可扩展字符串值。
    创建可扩展字符串值注册表编辑器
  5. 重命名该值以匹配您的 TrustedInstaller ID 名称。重命名该值后,它将如下所示:
     10.0.19041.1XXX
  6. 然后双击新创建的值并将WinSxS中标识的文件夹的路径粘贴到值数据字段中。它看起来像这样:
     %SystemRoot%winsxsamd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.19041.1XXX_none_7e3d47227c694b34
  7. 确保正确使用%SystemRoot%并从文件夹路径中修剪C:Windows
    添加路径可信安装程序可扩展字符串值
  8. 单击确定以保存更改。

如果在添加子项或字符串值时看到错误创建值消息,则您必须获得基于组件的服务项的所有权。您可以手动取得密钥的所有权或使用自动化工具来完成。

如何取得注册表项的所有权

  1. 在注册表编辑器中,右键单击基于组件的服务并选择权限
  2. 在“权限”窗口中,单击“安全”选项卡中的“高级”按钮。
  3. 默认情况下,所有者设置为TrustedInstaller 。单击更改链接。
  4. 输入您的用户名,然后单击Check names 。单击确定以保存更改。
  5. 选中替换子容器和对象上所有者框,然后单击应用到更改。

更改所有权后,您可以修改注册表项以添加新值和子项,而不会出现任何错误。

轻松修复 Sfc /Scannow Windows 资源保护错误

这四个修复程序之一将允许您修复 Windows 资源保护错误并执行 Sfc /scannow 命令。在大多数情况下,您可以通过调整注册表项来解决此问题。但是,如果没有任何效果,请尝试还原点或将系统重置为出厂默认设置。