After 35 days of uptime, fearing what would happen if I rebooted my computer (I've got problems with WU in the past), I decided to give Windows Update a try and finally install those updates (can't remember which KB) it has been trying to install for 3 months. I rebooted my computer, and then it was showing "Rebooting..." and then the screen froze. So I rebooted the PC, it showed "Installing updates..." and then it froze. I rebooted it again, and then it showed "Couldn't install updates. Undoing changes..." and then it froze. Same when booting in Safe Mode. So I tried launching a repair command prompt from the PE environment, to list the installed updates using dism /image:d:\windows /get-packages
and I got this:
Identité du package : Package_for_RollupFix~31bf3856ad364e35~amd64~~14393.953.1.2
État : Installation en attente
Type de version : Security Update
Heure d’installation : 26/03/2017 13:48
L’opération a réussi.
("Installation en attente" meaning "Installation pending")
So I ran dism /image:d:\windows /remove-package /packagename:[longname]
:
Traitement de 1 sur 1 - Suppression du package Package_for_RollupFix~31bf3856ad364e35~amd64~~14393.953.1.2
[==========================100.0%==========================]
Une erreur s’est produite - Package_for_RollupFix Erreur : 0x80070bc9
Erreur : 3017
Échec de l’opération demandée. Il est nécessaire de redémarrer le système pour restaurer les modifications apportées.
Le fichier journal DISM se trouve à l’emplacement X:\windows\Logs\DISM\dism.log
EDIT: Here is the DISM.log file (the relevant errors are near lines 2232 and 2312).
EDIT 2: dism [...] /scanhealth
did not find any errors.
EDIT 3: When I try to boot into Windows, it shows the "undoing changes" screen, and then the system freezes - screen is frozen, mouse pointer is not visible, num/caps/scroll lock is unresponsive, and I don't have any HDD activity LED. Also, I tried letting the PC work over night (maybe it would un-freeze automagically at some time), but after 19 hours it hasn't changed.
EDIT 4: Following Ramhound's advice, I tried to uninstall previous updates (the 14393.*** ones) but I noticed that DISM is always stuck at 10.0% and simply stays there, while writing to its log file:
2017-03-27 19:08:34, Error CSI 00001800 (F) Current pending rollback transaction content precludes other operations; reboot to complete rollback.[gle=0x80004005]
2017-03-27 19:08:34, Error CSI 00001801 (F) HRESULT_FROM_WIN32(ERROR_FAIL_REBOOT_REQUIRED) #13918885# from Windows::COM::CComponentStore::InternalTransact(...)[gle=0x80070bc9]
2017-03-27 19:08:34, Error CSI 00001802@2017/3/27:17:08:34.745 (F) onecore\base\wcp\componentstore\com\store.cpp(4970): Error HRESULT_FROM_WIN32(ERROR_FAIL_REBOOT_REQUIRED) originated in function Windows::COM::CComponentStore::InternalTransact expression: HRESULT_FROM_WIN32(3017L)
[gle=0x80004005]
2017-03-27 19:08:34, Info CBS Added X:\windows\Logs\DISM\dism.log to WER report.
2017-03-27 19:08:34, Info CBS Failed to create filter driver list file. [HRESULT = 0x80070003 - ERROR_PATH_NOT_FOUND]
2017-03-27 19:08:34, Info CBS Failed to submit the Windows Error Report. [HRESULT = 0x8007053d - ERROR_SERVER_DISABLED]
2017-03-27 19:08:34, Error CSI 00001803 (F) HRESULT_FROM_WIN32(ERROR_FAIL_REBOOT_REQUIRED) #13918883# from Windows::ServicingAPI::CCSITransaction::ICSITransaction2_Analyze(Flags = 0, riid = {f4d9decb-0250-4ad4-9500-85c7f2f281ec}, ppUnk = NULL, disp = 0)[gle=0x80070bc9]
2017-03-27 19:08:34, Info CBS Failed to get transaction analysis. [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]
2017-03-27 19:08:34, Info CBS Failed to get inventory. [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]
2017-03-27 19:08:34, Info CSI 00001804@2017/3/27:17:08:34.747 CSI Transaction @0xd7d0d80 destroyed
2017-03-27 19:08:34, Info CBS Failed to get CSI Inventory [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]
2017-03-27 19:08:34, Info CBS Failed to get component state. [HRESULT = 0x80070bc9 - ERROR_FAIL_REBOOT_REQUIRED]
2017-03-27 19:08:34, Info CBS Plan: Package: Package_1378_for_KB3213986~31bf3856ad364e35~amd64~~10.0.1.1, Update: 3213986-2798_neutral, current: Absent, pending: Default, start: Absent, applicable: Absent, targeted: Absent, limit: Absent, selected: Default
2017-03-27 19:08:34, Info CBS Plan: Force applicability state to absent due to absent limit state on package: Package_1379_for_KB3213986~31bf3856ad364e35~amd64~~10.0.1.1
2017-03-27 19:08:34, Info CBS Plan: Package: Package_1379_for_KB3213986~31bf3856ad364e35~amd64~~10.0.1.1, current: Staged, pending: Default, start: Staged, applicable: Absent, targeted: Absent, limit: Absent
2017-03-27 19:08:34, Info CSI 00001805 Transaction merge required, do-not-merge flag passed.
2017-03-27 19:08:34, Info CSI 00001806@2017/3/27:17:08:34.750 CSI Transaction @0xadf26b0 initialized for deployment engine {d16d444c-56d8-11d5-882d-0080c847b195} with flags 00000002 and client id 'TI5.3364_3202296:879/'
Every 2 or 3 seconds (here it's 19:08:34, the previous one was 31 and the next one 36), and it keeps writing the same thing over and over.
EDIT 5: I removed C:\Windows\WinSxS\pending.xml and now it got to the lock screen! Well, actually, it got to the lock screen but it stayed there. I think I fixed the update problem, but not the freeze problem. I took my stopwatch, and it seems the system freezes 5 seconds (+ or - 1 second) after the boot screen disappears, no matter if in Safe Mode (which, by the way, stays on a black screen). Before I deleted the file, Windows was freezing on an update screen, now it's freezing on the login screen. I restarted multiple times, sometimes I'm fast enough to press a key and hide the lock screen, but not fast enough to type my password and log in, before it freezes.
EDIT 6: When booting into "Safe Mode with Networking" (the normal Safe Mode boots directly to normal), I managed to get a BSOD with the error WHEA_UNCORRECTABLE_ERROR. Unfortunately, after 30 minutes, it was still at 0%, and as usual, it didn't create a dump file.
I finally solved my problem!
The solution was completely unrelated to anything I've said previously!
I simply copied everything in the C:\Windows\system32\config\RegBack
folder (which was created automatically before the update) to C:\Windows\system32\config
, and everything worked correctly.
If I have the time, I will try to compare the two registry hives to see what changed.
User contributions licensed under CC BY-SA 3.0