„2024-05 Kumulatives Update für Windows Server 2019 (1809) für x64-basierte Systeme (KB5037765) – Fehler 0x800f0982“ durch Installation des englischen Sprachpakets beheben.
Inhaltsverzeichnis
KB5037765 Update-Installation fehlgeschlagen
Auf Windows Servern ohne englischem Sprachpaket schlägt die Update-Installation derzeit fehl. Das Sprachpaket kann aber nachinstalliert werden.

KB5037765 – Fehler 0x800f0982 beheben
- ISO-Datei mit Sprachpaketen herunterladen (Download-Quelle: learn.microsoft.com)
- Heruntergeladene ISO-Datei öffnen/mounten
- Im Unterordner \x64\langpacks die Microsoft-Windows-Server-Language-Pack_x64_en-us.cab auf jeweilige(n) Server kopieren
- Windows-Taste + R bzw. Ausführen: lpksetup.exe öffnen
- Microsoft-Windows-Server-Language-Pack_x64_en-us.cab auswählen und installieren (kein Serverneustart notwendig)
Quelle: borncity.com
Nachdem das englische Sprachpaket installiert wurde, kann das besagte kumulative Update im Normalfall ohne Probleme installiert werden. Ich konnte den Vorgang bereits selbst bei mehreren Servern durchführen/testen.
Sprachpaket mit PowerShell installieren
Als Alternative zur lpksetup.exe, kann das Sprachpaket auch mit dem Dism-Befehl installiert werden:
Dism /Add-Package /Online /PackagePath="\\server\freigabe\Microsoft-Windows-Server-Language-Pack_x64_en-us.cab"Code-Sprache: JavaScript (javascript)PowerShell-Script: Sprachpaket prüfen und installieren
Mit dem nachfolgenden PowerShell-Script lässt sich der Vorgang noch weiter automatisieren, auch auf Windows Server 2022 ausdehnen und zudem mehrfach ausführen.
Für Windows Server 2022 muss allerdings eine weitere ISO-Datei heruntergeladen werden (Download-Quelle: microsoft.com). Die Sprachpakete für Windows Server 2019 können nicht für den Windows Server 2022 verwendet werden! Falls keine Windows Server 2022 im Einsatz sind, oder diese nicht geändert werden sollen, kann der elseif-Bereich entfernt werden.
Das Script prüft zunächst ob es auf einem „Windows Server“ ausgeführt wird. Im Anschluss wird mit Dism nach den aktuell installierten Sprachpaketen gesucht. Wenn „en-US“ nicht verfügbar ist, wird das jeweilige en-us-Sprachpaket über Dism installiert.
$os = (Get-CimInstance Win32_OperatingSystem).Caption
if($os -like "*Windows Server*"){
# Get installed language packs
$LangPacks = DISM.exe /Online /Get-Intl /English |
Select-String -SimpleMatch 'Installed language(s)' |
ForEach-Object {
if($_ -match ':\s*(.*)'){$Matches[1]}
}
# Search for language pack
if($LangPacks -notcontains 'en-US'){
Write-Host 'Language pack not installed!'
# Install en-US language pack
if($os -like "*Server 2019*"){
Dism /Add-Package /Online /PackagePath="\\server\freigabe\2019_Microsoft-Windows-Server-Language-Pack_x64_en-us.cab"
} elseif($os -like "*Server 2022*"){
Dism /Add-Package /Online /PackagePath="\\server\freigabe\2022_Microsoft-Windows-Server-Language-Pack_x64_en-us.cab"
}
}
}Code-Sprache: PowerShell (powershell)