Neues Jahr, neue Probleme...
Wir hatten nun fünf... FÜNF!!! Server, bei denen dieses Update fehlschlug.
Nach ca. einer Woche recherchieren und probieren, nachdem wirklich ALLE Troubleshooting Anleitungen nichts gebracht haben, gab es einen Hinweis in einem Forum, dass letzendlich die Lösung brachte.
Das CBS Logfile war leider so unfassbar nichtssagend beim Durchsuchen nach Stichworten wie "Error", dass wir im Team total aufm Schlauch standen.
Nach dem Fund im Netz, bin ich das Logfile selbst nochmal durchgegangen und dabei auf die selben Fehler gestoßen:
2026-01-22 15:52:32, Info CSI 00000366 wevtconfig warning #77: Channel Microsoft-Windows-Store/Operational is declared by an existing provider Microsoft-Windows-Store-Client-UI{{53e3d721-2aa0-4743-b2db-299d872b8e3d}}.
2026-01-22 15:52:32, Error CSI 00000367 (F) Error HRESULT_FROM_WIN32(15010) from InstrumentationManifestAssert at onecore\admin\wmi\events\config\manproc.cpp line 733, online=TRUE [gle=0x80004005]
2026-01-22 15:52:32, Error CSI 00000368 (F) Error HRESULT_FROM_WIN32(15010) in eventsXml: <events><provider guid="{9c2a37f3-e5fd-5cae-bcd1-43dafeee1ff0}" message="$(string.eventProviderName)" messageFileName="%SystemRoot%\System32\LicenseManager.dll" name="Microsoft-Windows-Store" resourceFileName="%SystemRoot%\System32\LicenseManager.dll" symbol="Microsoft_Windows_Store"><channels xmlns="http://schemas.microsoft.com/win/2004/08/events" xmlns:win="http://manifests.microsoft.com/win/2004/08/windows/events" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
Nunja, lange Rede gar kein Sinn: Ein fehlerhafter Store Eintrag in der Registry.
Nach Löschen des Keys, klappt das Update - Auch ohne Reboot!
Damit man den auch den richtigen Key findet, muss man entsprechend das Logfile nach dieser Warnung suche und dort die GUID kopieren.
Habe dazu auch ein Script gebastelt, damit spart man sich ewiges rumgesuche nach der richtigen GUID:
(Copilot meinte zwar, ich müsste das verbessern mit Errorhandling, aber leute.. Macht nen Snapshot vorher und gut is 😉)
$string = "declared by an existing provider"
$cabs = Get-Childitem C:\windows\logs\cbs\*.cab
if($cabs){
$cabs | Foreach-Object { Start-Process -FilePath "cmd.exe" -ArgumentList "/c expand.exe $($_.FullName) -f:* $($_.FullName.Replace("cab","log"))" -wait }
}
$GUID = Select-String -Path "C:\Windows\logs\CBS\*.log" -Pattern $string -AllMatches | %{$_ -replace " ","" } | select-string -Pattern "\{[0-9A-Fa-f-]{36}\}" | ForEach-Object {$_.Matches.Value} | select -unique
Remove-Item $cabs.fullname.replace("cab","log")
Get-Childitem HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WINEVT\Publishers\ | where{$_.PSChildName -eq $GUID} | Remove-Item -Recurse -Force
Wichtig wäre zu erwähnen, dass alle Server aus früheren Versionen per Inplace Upgrade aktualisiert wurden!
Bei frischen 2016er Installationen, gibt es weder den Key, noch die Probleme! 🙄
aber wer denkt schon an sowas...
