Share

imageWell, this one took ages. And whenever something takes me ages, rather than write it down in my personal notes, I prefer to put it out online for everyone with the same problem to easily find and benefit from.

The problem I'm talking about today is trying to upgrade your Windows 7 installation to SP1 by applying Microsoft's update KB976932, called "Windows 7 Service Pack 1 for x64-based Systems" and getting nothing but a failure every time. The same problem may affect 32-bit systems as well, and I'm not sure what the update number for that would be, but the solution should work for either one.

SNAGHTML3837080

The update starts just fine, chugs along for 10 minutes or so, then reboots the system and starts performing more operations, when suddenly one of them fails about 10% down the road, reboots, and reverts the whole process. You end up with this message (code 80070490) and a failure for which there are a lot of useless "solutions" on the web that just don't work.

Except for one. I can't take credit for it – all I did was spend a month weeding through the crap, retrying, and getting nowhere, until a genius by the name Ben-IS came up with exactly the right diagnosis and provided exactly the right solution. This solution, in my own interpretation, is below.

Step 1

We are going to use a utility called SFC (System File Checker or Windows Resource Checker), which is part of the Windows installation. It will help diagnose the problem.

Open up a command prompt (cmd) as administrator and run

sfc /scannow

This will run for a while and produce a file called CBS.log which you can find in %WINDIR%\Logs\CBS (usually C:\Windows\Logs\CBS). See this KB929833 for more info on SFC and CBS (Component Based Servicing).

sfc /scannow

Beginning system scan.  This process will take some time.

Beginning verification phase of system scan.
Verification 100% complete.

Windows Resource Protection did not find any integrity violations.

Even though there are no integrity violations, we should have enough info in the log to diagnose the problem.

Step 2

Unfortunately, Windows overwrote my CBS.log, so I'll go by the one Ben-IS provided.

Open up CBS.log and look for something like Failed uninstalling driver updates or 0×80070490 – ERROR_NOT_FOUND.

If you have this line, which you should if you're reading this post, you should also see lines similar to these a few lines above:

2011-04-14 12:02:33, Info CBS Doqe: q-uninstall: Inf: usbvideo.inf, Ranking: 2, Device-Install: 0, Key: 598, Identity: usbvideo.inf, Culture=neutral, Type=driverUpdate, Version=6.1.7600.16543, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=amd64, versionScope=NonSxS

2011-04-14 12:02:33, Info CBS Doqe: q-uninstall: Inf: sffdisk.inf, Ranking: 2, Device-Install: 0, Key: 599, Identity: sffdisk.inf, Culture=neutral, Type=driverUpdate, Version=6.1.7600.16438, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=amd64, versionScope=NonSxS

2011-04-14 12:02:33, Info CBS Doqe: q-uninstall: Inf: sdbus.inf, Ranking: 2, Device-Install: 0, Key: 600, Identity: sdbus.inf, Culture=neutral, Type=driverUpdate, Version=6.1.7600.16438, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=amd64, versionScope=NonSxS

One of these .inf files is the culprit, and we're going to find out which one in the next step.

Step 3

Now open up a different log file located at %WINDIR%\inf\setupapi.dev.log (normally c:\Windows\inf\setupapi.dev.log).

Look for a line that contains Failed to find driver update or FAILURE(0×00000490).

Note the exact path to the .inf file that failed. In my case, it was:

sto: Failed to find driver update 'C:\Windows\WinSxS\amd64_usbvideo.inf_31bf3856ad364e35_6.1.7600.16543_none_8a1a2513d42628c3\usbvideo.inf' in Driver Store. Error = 0×00000490

Step 4

This is the key to the whole operation. Open up the command prompt again (cmd) as administrator and run

pnputil – a INSERT_FILE_NAME_FROM_STEP_3

For example, I ran

pnputil -a C:\Windows\WinSxS\amd64_usbvideo.inf_31bf3856ad364e35_6.1.7600.16543_none_8a1a2513d42628c3\usbvideo.inf

You should see the following dialog:

SNAGHTML3a03ec7

Choose Install this driver software anyway.

The end result should be something like this:

pnputil -a C:\Windows\WinSxS\amd64_usbvideo.inf_31bf3856ad364e35_6.1.7600.16543_none_8a1a2513d42628c3\usbvideo.inf
Microsoft PnP Utility

Processing inf :            usbvideo.inf
Driver package added successfully.
Published name :            oem69.inf

Total attempted:              1
Number successfully imported: 1

Repeat this step for any failures found in step 3.

Step 5

Apply the SP1 Windows Update again – it should now install successfully.

And voila – enjoy your SP1!

Microsoft has failed to fix this incredibly cryptic problem, leaving it up to the users to figure out why their SP1 updates are not installing. Thanks to people like Ben-IS, solutions no longer involve head-banging, postal rage, and f7u12.

● ● ●

Artem Russakovskii is a San Francisco programmer, blogger, and future millionaire (that last part is in the works). Follow Artem on Twitter (@ArtemR) or subscribe to the RSS feed.

In the meantime, if you found this article useful, feel free to buy me a cup of coffee below.


Share

52 Responses to “How To Fix ERROR_NOT_FOUND 0×80070490 During Windows 7 SP1 Installation”

    51 Comments:
  1. Dima says:

    Those are good instructions. You forgot to mention that you will need a Windows 7 CD in the CD tray to run sfc /scannow. Otherwise it will prompt you for it all the time.

  2. ITGirl says:

    Thank you so much for this!! We had 8 different failures and thanks to other forum posts, fixed 7 of them but one laptop failed repeatedly with no fix in sight. Your post gave us the right instructions to fix it!

  3. Paja says:

    Great instruction. I had few notebooks in my company with this error. Now I fix them all and installation of service pack finished without problem. Thank you.

  4. rick van den Berg says:

    Been trou this staps but still encountering the saem error…
    did the scan and looked in the file on step 2 but did not find what you were mentioning.
    But at step 3 i did find the files and executed with step 4 all the "missing" drivers and than step 5 but again it fails…
    what could i still be doing wrong or could there be more?
    mine ends at 11% btw…. if any more info is required please say so i would like to get this over with as it irritated me :D darn microsoft… :)

  5. Nasa says:

    Damn it's working, thanks a lot Artem!!

  6. Bogdan says:

    I love you :) )
    I've been trying for a few months to fix this and your tutorial is the only one that address the issue correctly.

    However I have experienced a problem after applying the fix. The BOOTMGR was missing and I had to run repair BOOT errors from Windows 7 CD. Not a big issue at all, but it's good to know.

    Cheers man !

    Bogdan

  7. HeliJoe says:

    That routine is fucking great!! After weeks of searching in the dark, you gave me the right instructions to fix Bill's shit, Artem. Thank you so much. The only phenomena I had was, it din't work at the first run. Every time I ran one more cycle, the setupapi.dev.log found another .inf file missing. So, I installed one more and the installation went some percent higher than before. Finally, after five trials, I could break through. Just fantastic.

  8. Emmanuel says:

    Merci merci merci !!!
    3 months I was looking for a solution… (ok, not non stop but..)
    This is the only solution which worked on my laptop : 1215n eeepc, windows 7 32bits home premium.
    Regards

  9. iansydney says:

    Finally a fix to this problem which Microsoft can't properly fix themselves!

    Thank you very much!!

  10. Robin says:

    This worked perfectly. Thanks.

  11. Holiday says:

    Works for me too! Have a premium cup of coffee on me.

  12. Theefle says:

    wish i could upvote you. thanks a ton

  13. John says:

    Perfect Solution. Was struggling to get this to work until i found your post.

    Thanks a lot

  14. Brian says:

    I also give hearty thanks for giving a solution to a problem that has caused me untold hours of grief. In my case I could not make steps 1 and 2 work at all, and frankly I see no reason for them and am not sure why they are included here. I had to repeat steps 3 onward about six times to get all the .inf files fixed. Thank you so much!

  15. Nabil says:

    You have no idea how frustrating things were getting until i found your god send solution! Thank you so very much and i hope that last part comes true sooon enough!!

    God Bless!!
    Nabil J.

  16. Tom says:

    You made my day

  17. Marc says:

    Thank you for the usefull help it gave the right solution to the problem.

    Grtz from Holland

  18. Gertjan says:

    If you get an 'acces denied' message in step 4, click Start, Select Accessories, right click command prompt and select 'run as administrator'. This did it for me. Thanks.

  19. Theo says:

    In step 2 I can't find something like Failed uninstalling driver updates, but I find 0×80070490 – ERROR_NOT_FOUND.
    In step 3 I can't find something Failed to find driver update or FAILURE(0×00000490). What should I do :( ?

  20. Richard says:

    This is THE solution!

    Thank you so much!

  21. rakesh_ says:

    Step 4 is not working for me. Exact the same inf problem and need to install the same driver software.

    log:
    !!! sto: Failed to find driver update 'C:\Windows\WinSxS\amd64_usbvideo.inf_31bf3856ad364e35_6.1.7600.16543_none_8a1a2513d42628c3\usbvideo.inf' in Driver Store. Error = 0×00000490
    <<< Section end 2011/09/23 11:18:22.338
    <<< [Exit status: FAILURE(0x00000490)]

    pnputil -a error:
    Adding the driver package failed. The style of the inf is different than what was requested

  22. Wolfgang says:

    Artem,
    > You end up with [...] a lot of useless "solutions" [...] Except for one.

    Yes, exactly, and it was you who finally made my day. I just wanted to say a big "thank you"!

    Best regards from Hamburg, Germany.
    Wolfgang

  23. Nocturnhabeo says:

    LOL why don't you have a +1 button on your blog you run a friggen Android blog.

    • I haven't updated the layout of this blog in over a year, since AP launched. Either way, this is not an Android blog and +1 doesn't even have anything to do with Android. I may add it at some point.

  24. GeordieTrev says:

    Fantastic instructions – worked like a treat for me
    I had to run CMD as administrator, and didnt find the error when following step 2, but did find it when I followed step 3.

    This needs to be published as the recovery instructions

    Geordie from the UK

  25. JrT says:

    Thanks Man! ;-) Exact the same error as you, and what a pleasure to finally get rid of that annoying thing…

    /Jrt, Denmark

  26. Tiki35 says:

    This absolutely worked for me too.
    Didn't need Steps 1 and 2.

    C:\Windows\WinSxS\amd64_usbvideo.inf_31bf3856ad364e35_6.1.7600.16543_none_8a1a2513d42628c3\usbvideo.inf

    was the culprit.

    Thanks so much!

  27. Spencer says:

    Thanks, Artem!

    Thought I was faced with a complete reinstall as my laptop not provided with Windows disks – only recovery disks to revert to factory condition.

    As noted by Hellijoe and Brian above, took several repeats of steps 3 onwards to fix all inf errors (5 in total). But worked brilliantly.

    A shame there is no acknowledgement of this problem/solution on microsoft help and support. Clearly it's a common problem as any google search will show.

    Best Regards, and thanks again!

  28. Carl says:

    How do you run cmd as an administrator?
    My account is an administrator account, but when I run cmd it says:
    C:UsersCarl>
    and when I try: sfc /scannow
    I get the message:
    You have to be an administrator … to use the sfc tool.
    How do I get through this?
    Thanks!

  29. Carl says:

    When I type: %systemroot%logscbscbs.log
    in the cmd as admin, I get the result:
    "Access denied."
    Why is that? How can I find the cbs.log file?

    • becker hunter says:

      Hey Carl, you can skip step 2 and go directly to step 3 – I got the same problem here… just look for the error in the c:\Windows\inf\setupapi.dev.log file.

  30. Carl says:

    I have found my CBS log as a text document, so far so good.

    But I can't find any line containing the error code (80070490) I get when my SP 1 fails to install. I even get zero results when I search for "driverupdate" in the log…

    How can this be?

    Thanks!

  31. Sammy says:

    Best way to fix these kinds of errors once and for all for me was to switch to GNU/Linux. Took them problems right off.

    • rakesh_ says:

      It is not the best solution, but yeah I also do the same:) Linux Rocks.
      But what if you are stuck with windows for some reason?? That is my current condition:(

  32. becker hunter says:

    Thank you so much Artem Russakovskii!!! You solved a problem that microsoft is unable to solve until now!! For those having problem with the CBS.log file, you can skip step 2 and go directly to step 3 – just look for the error in the c:\Windows\inf\setupapi.dev.log file.

  33. eetronix says:

    Beautiful fix!! I kneel at your feet and want only to tie your shoelaces for the rest of my life.

  34. Ben-IS says:

    Just found your site while trying to update some info on the topic.

    I'm glad that you found my posting on the MS forum and shared it with others here.

    Seeing how many more people this helped makes me feel much better at the time it took me to figure it out!

    - Ben

  35. Marcel says:

    Almost given up, when I ran into your page.
    Tank you, thank you, Thank You. I'm am só happy!
    Marcel,
    Netherlands

  36. Eleazar says:

    Thanks a lot this thing help me too much

  37. ALi EMRE says:

    Thanks thanks thanks thanks a lot my brother Artem.I did it and it worked. I am very pleased to you.Thanks thanks.You are the man of year for me Artem :)

  38. Sean Clarke says:

    someone should make a batch file for this solution,.

  39. Lupius says:

    Like commenters pointed out above, setupapi.dev.log can only identify one missing inf at a time, so multiple iterations were needed. I fixed 3 inf's so far (usbvideo, sdbus, and sffdisk) and about to start the 4th install.

    Also, what exactly is the purpose of running the first two steps? Seems to me like you can just start with step 3.

  40. Pramod says:

    thanks a ton for this guide…it totaly helped me..

    u guys proved tat u are gr8….

    True tat even microsoft ppl couldn solve it…

    Thanks again!!!!!!!!!

  41. the1 says:

    a big thanks, was fighting this error for a couple days on a new build.

  42. Tbone says:

    I'm probably the last one to update to SP1 due to this problem, and I'm grateful for the resolution found here and nowhere on MS pages.

  43. Zerack says:

    Just wanted to thank you for this clear and concise write up. Everything worked like a charm (minus SP1 failing the first time, of course!).

    Thanks again.

  44. Adam says:

    Thank you so much for publishing this fix, worked great.

    With regards step 2, I couldn't find any failed drivers in the log, but continuing from step 3 onwards worked perfectly.

    Enjoy the coffee !

    Adam

  45. NYZouave says:

    I was so happy to see this post, as this issue has been biothering me for weeks.
    However, when I run the pnputil, I get the message: "Adding the driver package failed: Invalid INF passed as parameter."
    I noticed after running sfc scannow, the log said, "Cannot repair member file usbvideo.inf version 6.1.7600.16543," which is of course the problem file.
    Any idea of what my options are at this point? I'm considering doing a Winows 7 repair install, which hopefully will repair that file, but I also wondered if there is a way to get this particular usbvideo.inf file somewhere else and put it in the right folder.

  46. 1 Ping:
  47. [...] ist, finden sich unter [6] noch einige Hinweise. Ähnliches gilt für usbvideo.inf, wo sich unter [7] einige Schritte zur Problemdiagnose und Reparatur [...]

Leave a Reply