Windows 10 Errore 59 SideBySide

Talvolta può capitare che dopo l’installazione di cumulative updates di Windows 10 possano verificarsi problemi legati al fatto che per le più disparate ragioni hardware o software il setup dell’aggiornamento non vada a buon fine e qualche file risulti mancate o corrotto.

Un caso del genere può essere alla base del seguente errore che genere come sintomi il mancato avvio di alcune applicazioni e registra nel registro eventi il seguente:

Nome registro: Application
Origine: SideBySide
ID evento: 59
Categoria attività:Nessuna
Livello: Errore
Parole chiave: Classico
Descrizione:
Generazione del contesto di attivazione non riuscita per “System Default Context”. Errore nel file manifesto o dei criteri “C:\Windows\WinSxS\manifests\x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.14393.2430_none_f676ada0f25228bd.manifest”, riga 0. Sintassi XML non valida.

Ovviamente il file manifest che crea il problema può essere un altro o potrebbero anche essere più di uno.

Di seguito alcuni attività per cercare di risolvere il problema.

Attività 1: Utilizzo degli strumenti nativi per riparare i file manifest

Per risolvere il problema è possibile tentare di utilizzare gli strumenti nativi che però potrebbero non riuscire a risolvere l’issue, i tools e comandi che è possibile utilizzare per tentare di risolvere il problema sono in seguenti che devono essere eseguiti da un prompt dei comandi avviato con privilegi amministrativi:

Eseguire il Windows Update Troubleshooter e se necessario riavviare il computer

DISM /Online /Cleanup-image /Restorehealth

SFC /scannow

Dopo l’esecuzione di ciascun comando è possibile vedere il file di logs memorizzati in %windir%\Logs\DISM\dism.log
%windir%\Logs\CBS\CBS.log per avere informazioni nel caso i tool nativi non riescano a risolvere il problema. Nel caso sia necessario decodificare i codici di errore è possibile utilizzare Windows Error Lookup Tool.

A riguardo si vedano:

Si noti che i tools devono accedere ad Internet per scaricare eventuali file da correggere quindi occorre assicurarsi che l’accesso Internet avvenga senza problemi soprattutto se il computer deve utilizzare un proxy o un firewall aziendale, inoltre il client degli aggiornamenti di Windows deve funzionare senza problemi (a riguardo si veda il mio post Windows 10 script per il reset del Windows Update client e lo script WUReset.cmd nel mio repository su GitHub.

Attività 2: Sostituzione del file manifest corrotto

Nel mio caso dal momento che i tool nativi non hanno risolto il problema ho sostituito il file C:\Windows\WinSxS\manifests\x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.14393.2430_none_f676ada0f25228bd.manifest, che risultava effettivamente corrotto, con uno preso da un computer con la medesima versione di Windows 10. Per eseguire l’operazione di sostituzione del file ho avviato il computer tramite un CD avviabile su cui era presente Microsoft Diagnostics and Recovery Toolset (DaRT) 10, per la generazione di un’immagine di DART si veda il mio post Microsoft DART.

Dopo la sostituzione del file manifest le applicazioni che non si avviavano più si sono avviate regolarmente e nel registro eventi non sono più stati registrati eventi di errore 59 SideBySide.

Attività 3: Reinstallazione tramite DISM dell’aggiornamento dopo cui si è verificato l’errore

Provando a rieseguire i tool nativi per la correzione degli errori Windows Update Troubleshooter, DISM e SFC venivano però ancora rilevati degli errori e in base a quanto riportato nel file %windir%\Logs\CBS\CBS.log vi erano ancora altri file manifest corrotti.

Per risolvere il problema ho scaricato nuovamente l’ultimo cumulative update disponibile per il sistema che stavo analizzando un Windows 10 2016 LTSB a 64 Bit in lingua italiana e quindi ho scaricato il August 14, 2018—KB4343887 (OS Build 14393.2430) e in particolare il package 2018-08 Cumulative Update for Windows 10 Version 1607 for x64-based Systems (KB4343887) il cui file d’installazione è disponibile al seguente windows10.0-kb4343887-x64_b271ddc543d9dced2baef6af558e94726a549df3.msu.

Di seguito la procedura per installare nuovamente l’aggiornamento tramite DISM ipotizzando di avere memorizzato il package windows10.0-kb4343887-x64_b271ddc543d9dced2baef6af558e94726a549df3.msu in C:\Software:

CD C:\Software

MD C:\Software\KB4343887

expand -f:* windows10.0-kb4343887-x64_b271ddc543d9dced2baef6af558e94726a549df3.msu C:\Software\KB4343887

DISM /Online /Add-Package /PackagePath:C:\Software\KB4343887\Windows10.0-KB4343887-x64.cab

Al termine dell’installazione del package riavviare il sistema.

Attività 4: Pulizia della cartella %windir%WinSxS

Un’altra attività consigliabile è quella di eseguire la pulizia della cartella %windir%WinSxS tramite il comando il seguente comando:

DISM /online /Cleanup-Image /StartComponentCleanup

Per in sull’opzione StartComponentCleanup si veda DISM Operating System Package (.cab or .msu) Servicing Command-Line Options:

“Cleans up the superseded components and reduces the size of the component store. Use /ResetBase to reset the base of superseded components, which can further reduce the component store size. Installed Windows updates can’t be uninstalled after running /StartComponentCleanup with the /ResetBase option. Use /Defer with /ResetBase to defer long-running cleanup operations to the next automatic maintenance.”

Per la rimozione dei componenti sostituiti è possibile usare il parametro ResetBase:

DISM /online /Cleanup-Image /StartComponentCleanup /ResetBase

A riguardo si veda anche quanto indicato in Clean Up the WinSxS Folder:

“Using the /ResetBase switch with the /StartComponentCleanup parameter of DISM.exe on a running version of Windows 10 removes all superseded versions of every component in the component store.”

“All existing service packs and updates cannot be uninstalled after this command is completed. This will not block the uninstallation of future service packs or updates.”

Per la rimozione dei cumulative updates sostituiti è possibile utilizzare il parametro SPSuperseded:

DISM /online /Cleanup-Image /SPSuperseded

A riguardo si veda anche quanto indicato in Clean Up the WinSxS Folder:

“To reduce the amount of space used by a Service Pack, use the /SPSuperseded parameter of Dism.exe on a running version of Windows 10 to remove any backup components needed for uninstallation of the service pack. A service pack is a collection of cumulative updates for a particular release of Windows.”

“The service pack cannot be uninstalled after this command is completed.”

Attività 5: Utilizzo di DISM per riparare i file manifest tramite una un’immagine di Windows Offline

Può succedere che durante l’esecuzione dei comandi DISM visto nell’Attività 1 vengano restituiti errori di questo tipo:

DISM Package Manager processed the command line but failed. HRESULT=8007000E

Error: 0x800f0906 The source files could not be downloaded.

In questo caso è possibile provare a specificare durante l’esecuzione di DISM una cartella in cui vi sono i file di Windows che dovranno essere relativi alla stessa edizione, lingua, architettura e versione del sistema che si sta cercando correggere. Per generare una immagine di Windows è possibile utilizzare NTLite che permette anche di genere un’immagine Windows integrando package di aggiornamento e tramite la versione beta anche di scaricare gli aggiornamenti (a riguardo si veda Download Windows Updates), in alternativa è possibile utilizzare altri software per il download rapido degli aggiornamenti come WSUS Offline Update, WHDownloader, Autopatcher o Portable Update.

Pe tentare di riparare i file manifest è possibile eseguire i seguenti comandi per creare una directory C:\Software\MountImage in cui montare il file wim dell’immagine presente in C:\Software\W10SlipStream\sources\install.wim e quindi tentare la riparazione del sistema tramite DISM:

MD C:\Software\MountImage

DISM /mount-Image /ImageFile:C:\Software\W10SlipStream\sources\install.wim /index:1 /mountdir:C:\Software\MountImage /readonly

DISM /Online /Cleanup-image /Restorehealth /Source:C:\Software\MountImage

Nel caso si voglia tentare il ripristino usando esclusivamente l’immagine montata senza accedere anche a Windows Update utilizzare il seguente comando:

DISM /Online /Cleanup-image /Restorehealth /Source:C:\Software\MountImage /LimitAccess

Attività 6: Sostituzione dei file manifest con quelli di un altro sistema

Se i file corrotti risultano più di uno in base alle verifiche condotte con DISM e SFC (si vedano i comandi dell’Attività 1) verrà registrato il seguente evento:

Nome registro: Setup
Origine: Microsoft-Windows-Servicing
ID evento: 1015
Categoria attività:Nessuna
Livello: Avviso
Descrizione:
Sono stati ripristinati 0 istanze di 264 danneggiamenti dell’archivio di sistema. I danneggiamenti non ripristinati possono generare errori durante le operazioni future di manutenzione del sistema.

e svariati eventi del tipo seguente:

Nome registro: Application
Origine: Windows Error Reporting
ID evento: 1001
Categoria attività:Nessuna
Livello: Informazioni
Parole chiave: Classico
Descrizione:
Bucket errato , tipo 0
Nome evento: WindowsWcpStoreCorruption
Risposta: Non disponibile
ID CAB: 0
Firma problema:
P1: 10.0.14393.2272:1
P2: FileHashMismatch
P3: \winsxs\manifests\amd64_microsoft-windows-comdlg32.resources_31bf3856ad364e35_10.0.14393.2430_et-ee_5a20c5bacec45efa.manifest
P4:
P5:
P6:
P7:
P8:
P9:
P10:
File allegati:
\\?\C:\Windows\winsxs\manifests\amd64_microsoft-windows-comdlg32.resources_31bf3856ad364e35_10.0.14393.2430_et-ee_5a20c5bacec45efa.manifest
\\?\C:\Windows\Logs\CBS\CBS.log
\\?\C:\Windows\Logs\CBS\CbsPersist_20180822080347.log
\\?\C:\Windows\Logs\CBS\CbsPersist_20180821194933.cab
\\?\C:\Windows\Logs\CBS\CbsPersist_20180821165227.cab
\\?\C:\Windows\Logs\CBS\CbsPersist_20180821150423.cab
\\?\C:\Windows\Logs\CBS\CbsPersist_20180821061447.cab
\\?\C:\Windows\servicing\Sessions\Sessions.xml
\\?\C:\Windows\Logs\Cbs\FilterList.log
\\?\C:\ProgramData\Microsoft\Windows\WER\Temp\WER6464.tmp.WERInternalMetadata.xml
C:\ProgramData\Microsoft\Windows\WER\ReportQueue\Critical_10.0.14393.2272__124d2f81ca6fa9936fe691234b202be2fe494675_00000000_cab_060c6473\memory.hdmp
C:\ProgramData\Microsoft\Windows\WER\ReportQueue\Critical_10.0.14393.2272__124d2f81ca6fa9936fe691234b202be2fe494675_00000000_cab_060c6473\minidump.mdmp
I file potrebbero essere disponibili qui:
C:\ProgramData\Microsoft\Windows\WER\ReportQueue\Critical_10.0.14393.2272__124d2f81ca6fa9936fe691234b202be2fe494675_00000000_cab_060c6473
Simbolo analisi:
Nuova ricerca di soluzioni: 0
ID rapporto: ca804366-a623-11e8-945d-842b2b8e1ffe
Stato rapporto: 4
Bucket con hash:

In questo caso una soluzione potrebbe essere quella di copiare i file manifest da un sistema con la medesima versione di Windows 10, a esempio è possibile predisporre una macchina virtuale con la stessa versione di Windows 10 e lo stesso cumulative update installato e anche gli stessi software e componenti. Per procedere alla copiatura dei file è possibile utilizzare Microsoft Diagnostics and Recovery Toolset (DaRT) 10 come illustrato nell’Attività 2.

Attività 7: Verifica della consistenza del sistema

Per assicurarsi che il sistema non presenti problemi è opportuni eseguire i seguenti comandi verificando che siano eseguiti con successo:

DISM /Online /Cleanup-Image /ScanHealth

DISM /Online /Cleanup-Image /CheckHealth

SFC /Scannow

Inoltre dovrebbe venire registrato il seguente evento:

Nome registro: Setup
Origine: Microsoft-Windows-Servicing
ID evento: 1014
Categoria attività:Nessuna
Livello: Informazioni
Parole chiave:
Descrizione:
Rilevamento e ripristino dei danneggiamenti dell’archivio di sistema completati. Stato: 0x0; totale danneggiamenti rilevati: 0, totale danneggiamenti ripristinati: 0.

Terminata con successo la verifica di consistenza del sistema è consigliabile eseguire un controllo hardware del sistema ad esempio tramite AIDA64, HWiNFO, SiSoftware Sandra o altro software di diagnostica per assicurarsi che non vi siano anche problemi hardware, inoltre installate le ultime versioni di BIOS, Firmware, driver e applicazioni del sistema.

Conclusioni

Purtroppo a volte per errori di rete, memoria, disco o problematiche software dopo l’installazione degli aggiornamenti Windows 10 può presentare problemi dovuti a file corrotti, come ad esempio i file manifest, in questo caso è possibile tentare il ripristino mediante i tool nativi SFC e DISM. Vi sono però situazioni in cui a causa della corruzione di file particolarmente critici i tool nativi non funzionano a questo punto è possibile valutare la sostituzione di tali file partendo da un sistema identico oppure valutare se sia più conveniente la reinstallazione del sistema.

Un’altra possibile causa di questo tipo di problema potrebbe essere dovuto a problemi legati all’installazione dei package Microsoft Visual C++ Redistributable (vc_redist), in tal caso è possibile procedere alla disinstallazione dei vc_redist installati e alla loro reistallazione, i vc_redist possono essere scaricati al seguente The latest supported Visual C++ downloads.

Per ulteriori informazioni su come riparare un’installazione Windows si veda anche il seguente Repair a Windows Image.