Napaka 0x80073712 pri nameščanju posodobitev in komponent v sistemih Windows Server 2016 in Windows 10

Soočeni z zanimivo napako 0x80073712 pri nameščanju posodobitev v Windows Server 2016. Kot se je pozneje izkazalo, je ta napaka povezana s poškodbo pomnilnika komponent sistema Windows. Ta članek opisuje, kako popraviti shrambo komponent v sistemih Windows 10 / 8.1 in Windows Server 2016/2012 R2 ter obnoviti delovanje Windows Update..

Ko poskušate namestiti posodobitve v Windows Update, se prikaže napaka:

Manjkajo nekatere datoteke za posodobitev ali pa obstajajo težave. Posodobitev bomo poskušali prenesti pozneje.

Koda napake: (0x80073712)

Nekatere posodobitvene datoteke manjkajo ali imajo težave. Poskusili bomo prenesti posodobitev.

Koda napake: (0x80073712)

Najprej sem poskušal ponastaviti stanje storitve Windows Update in očistiti imenik SoftwareDistribution v skladu s priporočili iz članka "Ponastavitev posodobitve sistema Windows", vendar to ni pomagalo.

Uporaba ukaza dism / online / get-paketi Preveril sem, ali so vse posodobitve v stanju Nameščeno.

Če so nekatere posodobitve Namestitev v teku, lahko pravilno odstranite z ukazom DISM (uporabite identiteto paketa):

DISM.exe / Online / Remove-Package /PackageName:Package_for_KB4485447~31bf3856ad364e35~amd64~~10.0.1.1 / tiho / norestart

Dolgo sem se odločal, na kakšen način naj se lotim te težave, vendar sem moral v okviru odpravljanja težav namestiti komponento .Net Framework 3.5 na Windows Server 2016. Pri nameščanju komponente .Net s sistemom DISM se je pojavila značilna napaka, ki me je spodbudila k nadaljnjim ukrepanjem:

Zahteva za dodajanje ali odstranjevanje funkcij na določenem strežniku ni uspela. Namestitev ene ali več vlog, storitev vlog ali funkcij ni uspela. Skladišče komponent je poškodovano. Napaka: 0x80073712.

Trgovina z deli je poškodovana. Napaka: 0x80073712.

V tem primeru lahko v datoteki CBS.log najdete naslednjo vrstico (% WinDir% \ Logs \ CBS \ CBS.log):

[HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]

Kot lahko vidite, je iz nekega razloga shranjevanje komponent vašega sistema poškodovano, zaradi česar Windows Update ne more prejeti podatkov iz manifesta CBS (Component-based Servising), potrebnih za namestitev posodobitev. Skladišče komponent lahko obnovite s pomočjo vgrajene funkcije DISM.

V najpreprostejšem primeru pri obnovi skladišča komponent ne potrebujete namestitvenega diska z distribucijo Windows. V tem primeru bo sistem za obnovitev uporabil shranjevalne datoteke na lokalnem disku in spletnem mestu Windows Update (lokalnega strežnika WSUS ni mogoče uporabiti za obnovitev komponent).

Najprej preverite stanje prodajalne komponent s pomočjo ukaza:

dism / na spletu / cleanup-image / checkhealth

Če se po analizi pojavi sporočilo »Pohramba komponent je popravljiva«, lahko poskusite obnoviti shrambo komponent z ukazom:

dism / na spletu / čiščenje-slika / obnavljanje zdravja

V nekaterih primerih je to dovolj. Toda moj pripomoček DISM je ustvaril napako:

Napaka: 0x800f0906
Izvirnih datotek ni bilo mogoče prenesti.

V tem primeru je za obnovitev sistema Windows potreben namestitveni disk z vašo distribucijo Windows. Recimo, da ste z distribucijo Windows namestili datoteko ISO. Zdaj morate preveriti seznam trenutnih izdaj sistema Windows v datoteki install.wim na priloženi sliki (disku):

dism / Get-WimInfo /WimFile:e:\sources\install.wim

V mojem primeru je nameščena izdaja Windows Server 2016 Standard (Desktop Experience), zato v naslednjem ukazu uporabim njen indeks - 2.

dism / na spletu / cleanup-image / recoveryhealth /source:e:\sources\install.wim:2 / LimitAccess

Ponovno preverite stanje prodajalne komponent:

Dism / Online / Cleanup-Image / CheckHealth

DISM naj se vrne: Zaznana ni bila poškodba prodajalne komponent.

Po obnovitvi prostora za shranjevanje preprosto zaženite Windows in preverite, ali so posodobitve in komponente sistema Windows nameščene brez napak.