SCCM Site Console (Admin UI) Failure
Following a number of interferences with our beloved SCCM Primary Site it was in a broken state.
The “\Program Files\Microsoft Configuration Manager\AdminConsole\AdminUILog\SmsAdminUI.log” reported:
“Error Code:
ProviderLoadFailure
\r\nSystem.Management.ManagementException\r\nProvider load failure \r\n at System.Management.ManagementException.ThrowWithExtendedInfo(ManagementStatus errorCode)
at System.Management.ManagementObjectCollection.ManagementObjectEnumerator.MoveNext()
at Microsoft.ConfigurationManagement.ManagementProvider.WqlQueryEngine.WqlQueryResultsObject.<GetEnumerator>d__74.MoveNext()\r\nManagementException details:
instance of __ExtendedStatus
{
Operation = “ExecQuery”;
ParameterInfo = “SELECT * FROM SMS_Site WHERE SiteCode = ‘XXX’”;
ProviderName = “WinMgmt”;
};
”
Where “XXX” is the name of an SCCM site but not ours! This led me to https://docs.microsoft.com/en-us/previous-versions/system-center/configuration-manager-2007/bb633148(v=technet.10)?redirectedfrom=MSDN followed by https://docs.microsoft.com/en-us/previous-versions/system-center/configuration-manager-2007/bb932190(v=technet.10)?redirectedfrom=MSDN , this latter article walked me through examinig the SMS_Providor WMI class and it is there I found the spurious reference to the unknown XXX site.
Deleting that reference restored AdminUI Console functionality (yay!).
Another case with similar symptoms was the result of a WMI db corruption which caused the OS to automatically rebuild the db but which did not re-import the SCCM WMI references. That was resolved by:
- Run > Wbemtest
- Connect to “root\sms” –> Enum Classes–>Select recursive and check for SMS_ProviderLocation – it was not present
- From an elevated command prompt enter the following commands to add the SCCM .mof’s (excluding the _*.mofs) to the $mofs variable and then switch to the Wbem folder and import the WMI modules to the OS
PS D:\> $mofs = get-childitem "D:\Program Files\Microsoft Configuration Manager\bin\X64" -filter "*.mof" -exclude "_*.mof" -recurse
PS D:\> cd C:\Windows\System32\Wbem
PS C:\Windows\System32\Wbem> foreach ($mof in $mofs){mofcomp $mof.FullName}
- Restart the Windows Management Instrumentation Service
- Repeated Steps#1 & 2 and noted SMS_ProviderLocation now exists in WMI
- Launched SCCM Admin Console locally successfully
- Launched SCCM Admin Console remotely successfully
- Launched Task Sequence Creation Wizard successfully