当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 修复:SCCM 中软件中心无法加载错误

作者:精品下载站 日期:2024-12-14 12:02:28 浏览:17 分类:玩电脑

修复:SCCM 中软件中心无法加载错误


在这篇文章中,我将介绍多种解决方案来修复启动 SCCM 软件中心时出现的软件中心无法加载错误。当软件中心因错误而无法加载时,您可以使用这些解决方案。

软件中心是与 SCCM 客户端代理一起安装的应用程序。在 Windows 设备上安装 Configuration Manager 客户端时,它会自动安装软件中心。

有时软件中心无法加载,通常会显示错误。一个常见的错误是无法加载软件中心,我们将了解如何解决此错误并修复它。

有时,软件中心崩溃,但没有任何错误,表明安装的 dot net 框架已损坏。在极少数情况下,软件中心不会加载,因为计算机上缺少依赖组件之一。

我经常在 Prajwal Desai 论坛上收到许多有关软件中心错误的问题。每个错误代码都有一个与之关联的唯一解决方案,您必须检查 SCCM 日志文件以确定问题的根本原因。

查看软件中心日志文件以进行故障排除

在我们继续之前,每当您在软件中心遇到错误时,您必须始终查看日志文件。 SCCM 软件中心日志文件位于客户端计算机上的 C:\Windows\CCM\Logs 文件夹中。

有三个重要的 SCCM 日志文件可用于解决软件中心问题:

  • SCClient_domain@username_1.log - 记录客户端计算机上指定用户在软件中心的活动。
  • SCClient_domain@username_2.log - 记录客户端计算机上指定用户在软件中心的活动。
  • SCNotify_domain@username_1.log - 记录通知用户有关指定用户的软件的活动。

修复 SCCM 中无法加载软件中心的问题

当您尝试启动软件中心时,会弹出以下错误:无法加载软件中心。加载软件中心所需的组件时出现问题。您可以稍后尝试启动软件中心。如果问题仍然存在,您可以联系您的服务台

SCCM 中无法加载软件中心错误有多种解决方案,我将在这篇文章中列出这些解决方案。

[玩转系统] 修复:SCCM 中软件中心无法加载错误

解决方案 1:重新安装 SCCM 客户端

当您对客户端计算机上的软件中心无法加载错误进行故障排除时,您可以尝试的第一步是重新安装 SCCM 客户端代理。

您可能会说软件中心以前加载得很好。但是,您的软件中心有可能已损坏,重新安装客户端代理可以解决大部分问题。

客户端重新安装过程涉及卸载计算机上的 ConfigMgr 客户端代理并在同一计算机上手动安装客户端代理。

您可以参考以下有关在计算机上重新安装 SCCM 客户端代理的指南。

解决方案 2:修复 ConfigMgr 客户端

当您发现软件中心未在计算机上正确加载时,您可以尝试修复 Configuration Manager 客户端代理。

使用 ccmrepair,您可以使用命令行轻松修复 SCCM 客户端代理。 CCMrepair 修复 SCCM 客户端代理上的所有组件。您可以参考以下指南,了解修复计算机上的 SCCM 客户端代理的不同方法。

修复客户端代理后,重新启动计算机,然后启动软件中心。软件中心无法加载错误现在应该已修复。

解决方案 3:检查软件中心依赖项

在计算机上安装 Configuration Manager 代理时,该代理依赖不同的组件来运行。例如,您必须将 .NET Framework 更新到版本 4.8,以便在 SCCM 客户端上不会遇到任何错误,安装最新的 Microsoft Visual C++ Redistributable 等。

Configuration Manager 2107 及更高版本至少需要 .NET 版本 4.6.2,但建议使用最新版本的 .NET Framework 4.8。 CCMSetup 不会自动安装 .NET 版本 4.8。确保为 SCCM 客户端安装受支持的 Dot Net Framework 版本。

回到软件中心依赖项,许多组件都是 Windows 默认启用的服务或功能。您不应在 Configuration Manager 客户端上禁用这些组件。如果禁用以下任何组件或服务,软件中心将无法正确加载。

下表列出了 Configuration Manager 客户端外部的所有依赖项。

Windows Installer

需要支持使用 Windows Installer 文件进行应用程序和软件更新。

Background Intelligent Transfer Service (BITS)

需要允许客户端计算机和 Configuration Manager 站点系统之间的限制数据传输。

Task Scheduler

客户端操作所需,例如定期评估 Configuration Manager 客户端的运行状况。

Remote Differential Compression (RDC)

需要优化网络上的数据传输。

SHA-2 code signing support

客户端需要支持 SHA-2 代码签名算法。有关详细信息,请参阅 SHA-2 代码签名支持。

解决方案 4:使用日志文件解决软件中心问题

如果您已尝试上述解决方案,但仍然遇到软件中心无法加载错误,则必须查看软件中心日志文件以确定问题。

假设您在客户端计算机上启动软件中心,并且看到软件中心无法加载错误。下面的屏幕截图显示了您看到的确切的软件中心错误。

[玩转系统] 修复:SCCM 中软件中心无法加载错误

一旦看到上述错误,请在客户端计算机上转到 C:\Windows\CCM\Logs 文件夹。使用 CMTrace 日志文件查看器或其他 ConfigMgr 日志文件查看器打开日志文件。

对于软件中心加载错误,您需要查看的日志文件是 SCClient_domain@username_1.log。打开此日志文件并仔细检查每一行。

下面的日志文件显示了对 CCM_PROGRAM 的 WMI 查询,多个错误导致 SCCM 软件中心无法加载。例如,异常 Microsoft.SoftwareCenter.Client.Data.WmiException:提供程序加载失败。

[玩转系统] 修复:SCCM 中软件中心无法加载错误

以下行是从 SCClient_domain@username_1.log 粘贴的。

Exception caught in Connect, line 246, file C:__w\s\src\DataAbstractionLib\WmiDataProvider\WmiConnectionManager.cs - Type System.Runtime.InteropServices.COMException: Call was canceled by the message filter. (Exception from HRESULT: 0x80010002 (RPC_E_CALL_CANCELED)) (Microsoft.SoftwareCenter.Client.Data.WmiConnectionManager at Connect)
StackTrace: at System.Management.ThreadDispatch.Start()
at System.Management.ManagementScope.Initialize()
at Microsoft.SoftwareCenter.Client.Data.WmiConnectionManager.Connect(String machineName, String namespaceName, Boolean monitorEvent)
Unhandled exception was caught. (Microsoft.SoftwareCenter.Client.SingleInstanceApplication at OnGetException)
Failed to convert the internalException. The error code will be 0. (Microsoft.SoftwareCenter.Client.Data.WmiException at get_ErrorCode)
Exception caught in OnGetException, line 193, file C:__w\s\src\SoftwareCenterApplication\PDApp.cs - Type Microsoft.SoftwareCenter.Client.Data.WmiConnectionException: WMI repository is not connected, error code 0 (Microsoft.SoftwareCenter.Client.SingleInstanceApplication at OnGetException)
StackTrace: at Microsoft.SoftwareCenter.Client.Data.PlatformDataConnector.Connect()
at Microsoft.SoftwareCenter.Client.Data.ClientConnectionFactory.CreatePlatformConnector()
at Microsoft.SoftwareCenter.Client.SCClient.d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.SoftwareCenter.Client.SCClient.d__16.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.b__6_0(Object state)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)

从上面的日志片段中,考虑以下错误:“Microsoft.SoftwareCenter.Client.Data.WmiConnectionException:WMI 存储库未连接,错误代码 0”。此错误表明客户端计算机上的 WMI 存储库存在问题。如果存储库损坏,WMI 服务将无法正常运行。在这种情况下,SCCM 软件中心无法加载,并显示错误“软件中心无法加载”。

如果 WMI 损坏,您可能会收到各种错误,具体取决于当时正在完成的活动。要修复客户端上的 WMI 问题,您必须重建 WMI 存储库。重建 WMI 存储库后,WMI 问题将得到解决,并且软件中心应该正确加载。

结论

SCCM 中的软件中心故障排除是一个复杂的主题。每当您在SCCM中遇到软件中心无法加载错误时,您可以尝试上述解决方案。 Configuration Manager 中的某些错误有不止一种解决方案,最重要的是,故障排除从查看日志文件开始。如果其他东西对您有用,请随时在评论部分添加它们。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯