True to full Murphy form, my upgrade to Windows 10 on my MacBook Pro Bootcamp partition went anything but smoothly.
When I got my new machine a few weeks back I installed the Windows 10 Preview on it – specifically build 10162. The install through the Bootcamp manager went smoothly without any issues whatsoever and Windows 10 had been running nicely on it. The Mac makes for a pretty damn nice and fast Windows machine – it’s quite a bit speedier than a similarly configured Dell XPS 15 I’ve been using. The Mac is partitioned half and half for Windows and Mac and running the Bootcamp partition from the Mac via Parallels and it all works pretty well. I’ve been spending most of my time in the native Windows partition recently and using Windows 10.
I’ve been pleased with Windows 10 – it seems Microsoft has finally found some polish instead of the cartoonish interfaces they’ve been cultivating since Windows Vista through Windows 8. For the most part the OS seems very smooth in terms of operation and the overall feel of the shell. I really like the way the Windows Chrome looks – which actually makes even legacy apps look a bit more modern. There isn’t really anything new that will blow your mind. It’s more like incremental updates and fixing things that should have worked in the first place. The only really useful new things to me so far have been the ability to configure multiple displays individually, multiple desktops and some of the Console enhancements – cut and paste and command history in particular. Minor stuff, but that’s OK with me – it’s an OS and we don’t need new features; we need usability and stability more than anything. There is still a bunch of nastiness when it comes to all the mish-mashed configuration UIs that are a pain in the ass to use but hey what else is new in Windows, right? Configuration UI issues aside, overall I think Windows 10 is a big step up in overall look and feel and behavior from Windows 8. It just feels like a lot cleaner and smoother environment to work in.
So, I’ve been using Windows 10 for a few weeks now and it’s been working without any issues for me. Performance has been great – as good or better than Windows 8 (hard to say really since this is new hardware). Everything’s been cool and pretty painless.
Driver Update Problems
Everything except the Windows Update process that is.
As I mentioned I installed one of the last Insider Previews and for a while I’d been unable to install more recent previews and the final RTM release.
It all started with a bad video driver update – the AMD video driver wanted to upgrade but would fail:
Maddeningly Windows 10 would also keep trying to install the same failed updates over and over again on the next Windows Update check, which is pretty lame. Worse yet there’s no easy way to disable this update from re-appearing – in previous Windows versions you could hide updates to keep them from recurring, but not so in Windows 10.
It turns out that the failed driver update was also responsible for the inability to upgrade my version of Windows. But… since you can’t keep an upgrade from showing up I had no way of disabling that upgrade.
I tried upgrading a total of 5 times before I found a solution that worked. I tried a number of suggestions from uninstalling all drivers before an update, to uninstalling .NET 3.5 (which apparently has been causing some weird issues with the upgrade installers even in Windows 7->8 upgrades I recall) to running an install of the full Windows 10 ISO. Nothing worked on the first four installs.
I kept getting the same error each time at about 35% of the install process:
The installation failed with FIRST_BOOT with an error during SYSPREP operation
No fun! Especially since the time from start to failure is about 20 minutes.
For the final upgrade that actually worked I did 3 things one of which made the upgrade work. I suspect the final one which is disabling any failed updates is the real key, but here are all three that might help others with their update problems.
Clean out all Temporary Install Files
Based on a number of suggestions found in various forums I decided to clean out all old installer files and general temp file removal on the machine. Windows 10’s update process downloads files in the background incrementally, if there are problems with the installer it’s probably a good idea to clean out those files and start from scratch and make sure when the update downloads it downloads to a clean install folder.
To do this you can use the Windows Disk Cleanup tool and run it in Administrative Mode that lets you clean ‘system’ files.
Using the Windows Resource Checker (sfc.exe)
Based on a suggestion on various forums I also ran sfc.exe to scan the system for potentially modified system files that might also be blocking the update. This utility basically runs through the files in the Windows installation and makes sure they are not corrupted or otherwise invalid. When I ran this I had one modified .inf file that was updated by the Parallels installer in order to get Windows 10 to run on Parallels attaching to a Bootcamp partition.
The command you need to run is:
from the Windows command prompt. Make sure you run this as an Admin and you run it in 64 bit mode (if you’re running 64 bit Windows). I happened to be using Console2 rather than the actual Windows Command prompt and because it’s a 32 bit application it was finding the 32 bit version of sfc rather than the 64 bit one. So make sure you use the actual Windows command prompt.
Apparently this utility may also reset various file flags, so even if nothing is found it might help with an install problem.
This command takes a while to run… so be patient.
Hiding Windows Updates
Although I described the items above I think the real reason I believe my final update worked was because I was able to hide my Windows Update of the AMD video driver which was failing. As I mentioned earlier I had problems with the AMD video driver Windows update failing repeatedly. When Windows starts the upgrade process the first thing it does is try to find all pending updates and tries to install those or at least download the drivers from those. However, since the updated driver was failing I suspect that that was the problem.
Unfortunately there’s no easy way to hide updates natively in Update dialog anymore due to Microsoft’s new policy that you have to install updates eventually. Ok, I get it that it’s a good idea to keep up to date, but there needs to be a way to opt out if something fails or worse if a driver update goes wrong and you roll back and don’t want to reinstall the driver.
I reached out on Twitter, and thanks to Robert McLaws who pointed me at this GizModo article :
The article points at a utility from Microsoft Support that you can download to essentially hide updates.
How to temporarily prevent a Windows or driver update from reinstalling in Windows 10
The download is a small utility - wushowhide.diagcab - you can run to disable specific updates:
And voila you’re good to go until the next set of updates for the same driver rolls around.
There’s also a way to do this using PowerShell and a custom module described in this post by Igal Tabachnik:
Preventing a certain Windows Update from installing on Windows 10
After running the UI utility and then updating to the RTM build of Windows 10 using Windows Update I was finally able to install the RTM build.
Windows 10 Needs a Hide Update Option
There’s no doubt that Windows 10 needs to have native functionality for hiding updates. There are going to be driver updates that simply won’t work as is the case for me. The fact that Microsoft has a separate download to make this happen is ridiculous. Drivers have been known to not work and stuff goes wrong. I realize Microsoft is trying to make updates automatic to insure machines are up to date and secure, but re-downloading failed updates over and over puts a bunch of strain on the network and causes the computer to wake up during every update cycle to install an update that’s just going to fail again. That’s not a solution. A better process is needed for this scenario.
Heck since Windows 10 itself ships as a Windows update I ended up downloading Windows 5 times as part of this update cycle. That’s over 20 gigs of wasted bandwidth and that’s just for me. Now multiply this by a few thousand people who are also having issues out of the millions that don’t. It’s mind-boggling if you think of the bandwidth wasted.
This is clearly an oversight that has to be addressed in some way in the future.
For now I’m just glad the update worked. At least I managed to get up to the RTM version – we’ll see what happens when the next major update rolls around that acts like a reinstall. And already I’m seeing the AMD driver show up again on this machine as an update and – once again it’s failing to install. It’s disabled now and an update check is not trying to install a new driver at the moment. Fingers crossed AMD and Microsoft will figure this out at some point.
Hopefully this might be useful to some of you who also are having problems updating to Windows 10 from Preview releases.
Other Posts you might also like