When updating my freshly installed Windows 7 on my Eee PC 901 I stumbled upon the 80070011 error when trying to install KB974431. I did manage to find a solution to the problem, and since it was a bit tricky to find, I figured I should post it here, hoping that anyone that has this problem in the future will have an easier time finding the solution than I did.
UPDATE: Some say this still works in Windows 8, some say it doesn’t.
The cause of the problem is that you might have junctioned your Program Files directory to another hard drive in order to save space (that’s what I did – if you haven’t done anything like this to your Program Files directory, this fix might not work for you), but this update still wants to install to the default path in C:.
Luckily, the fix is only a regedit away. Now, I guess I should mention that editing the registry might cause problems if you edit the wrong things, that you should only do it if you feel comfortable and that I don’t take any responsibility for any potential problems. I hope I got that right, I’m new at writing posts like this.
The solution:
- Open the registry editor by going to Run and typing in
regedit
- Navigate to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
- Edit the
ProgramFilesDir
andCommonFilesDir
entries so that they point to the actual location of your Program Files and Common Files folders (most likely just change the drive letter from C: to D:) - Close the registry editor, KB974431 should now install without any problems
Thanks to LionelHutz at the EeeUser Forum for the solution!
Thank you alot. I have been searching a solution to this error. I have googling for weeks now. This really helped to my error. Im really gratefull you shared this info with us. Again, THANKS!
– Peter
Thanks a bunch Vikku, your trick helped me to finally apply KB980302!
Wow thanks!!
thanx man. exactly what i was looking for.
thanks!
Thank you so much!! I’ve been struggling with this problem for months, today I thought to Google again and this page was hit #1! Solved the problem immediately!!
Lifesaver…
Holy Canoly, it worked! WOW.
Amen to Google, and Double Amen to you, Vikku.
Holy crap it worked. As a follow up, I run a 64 bit system and i changed the entries for Program Files and Program Files (x86). Actually, I went ahead and changed ALL the entires in Program*Dir* and Common*Dir* (on my system, that was 6 keys in all) in the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion key/folder/whatever to point to my D drive.
Thanks a million ! I have actually symlink’ed (or junctioned) all my Programs* and Users* locations out of my SSD (where Windows is) to a RAID array. I changed ALL the dirs from C:\* to D:\* and Voila, no more update issues.
Brilliant 🙂
i did pretty much the same thing, not sure if the issue is fixed or not, but i’m attempting to update now
Thanks!
I have had this problem for at least a month now, Windows Update couldn’t install KB2423089, KB2419640, KB2416400, and KB905866.
Thanks!
Perfect! Thanks
Thanks !
This solved also my IE9 install problem
The same values are also present in
“HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion”
for the 64-bit version.
So it’s probably a good idea to change those as well.
Oh, and for those that did the same for their User folder, these are the locations for the keys to edit:
HKEY_CURRENT_USER\Volatile Environment
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\[Profile Code]
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\[Profile Code]
HKEY_USERS\[Profile Code]\Volatile Environment
Sorry, the third one was supposed to be:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\ProfileList\[Profile Code]
Thank you! Saved my day!
You are a god!
This is excellent! Thanks!
A quick question: does this affect installs? The whole point of me not creating a D:\Program Files manually, and instead junction-pointing it away, is I have other programs that don’t like to recognise anything but the original C:\Program Files path.
In short: are new installs going to read that key, too?
I think properly configured installers (i.e. those that don’t just have “C:\Program Files” hardcoded in them) will do that, yes. I no longer have a machine where I have done as I wrote in the post (got a new Eee with a proper harddrive, put Linux on the old one) so I cannot check.
Thanks for the tip, Vilkku and LionelHutz! Really useful to get windows to install a few of those stubborn updates.
You da man! Amazing that I found the right solution on first google clickthrough!
Apparently not working on Windows 8 🙁
Actually, this works fine on Windows 8. Thanks a lot!
Thanks!
I never would’ve gotten the notion to look at things like that. This is going to make my afternoon much easier.
Worked for me in Windows 8. The guy above apparently couldn’t follow the instructions.
Just suberb! Thanks!
The regedit fix worked for failing installation of KB3135988, thanks !
This only works if those are the directories you symlink. I symlink SoftwareDistribution and winsxs. Unfortunately there is no registry tweak for winsxs that I can find.