# Wednesday, March 16, 2011

Windows 7 Sp1 - fatal error c00000034 on install

Due to the number of updates on this issue, I have included them at the top... below is them is the original blog...


Update: MSoft has written a vbs script to do the same as what I have listed below. The main difference is that you do not need to hunt through pending.xml - look at http://support.microsoft.com/kb/975484 for more info.

Update: MSoft has redone how WSUS rolls out w07sp1 - "Packages have been updated to address a known issue." http://support.microsoft.com/kb/894199 which might help this issue. Note that this does not appear to be a change in sp1, but in the wsus rollout format...

Update: MSoft has released Remote Adminsitration Tools that work with SP1 -> http://www.microsoft.com/downloads/en/details.aspx?FamilyID=7d2f6ad7-656b-4313-a005-4e344e43997d

Further Notes on issues with w07 sp1 in general: http://www.infoworld.com/t/microsoft-windows/what-you-need-know-about-windows-7-service-pack-1-699

Fur

Recently rolled out SP1 to our wee test group on WSUS. While it worked for most, one machine simply refused to boot, giving the BSOD (black screen of death) with "Fatal Error C0000034" as witnessed below...

Before I lay out what worked for us, let me give credit where credit is due - specifically to "thewoot" -> you can see his post here. He also mentions that you can send him money via paypal if you want to say thank you in a practical way - considering the potential costs to your organization I don't think that is a bad idea at all...

Here are his steps (with some notes of changes...)

1 - Reboot your computer with the Windows 7 disc in the drive

2 - Select "Launch Startup Repair"

3 - !!! Cancel the "repair"

4 - Click on "Don't Send" (if they don't know by now...)

5 - !!!! Click on the link "View advanced options for recovery and support"

6 - Click on the "Command Prompt" link at the bottom.

7 - When the command prompt opens, type "Notepad" to launch notepad. Note this MIGHT work with Wordpad (type "Write" to launch) but I have not tried it

7a - fyi - if you need to get files off (just in case) you can put in a USB drive and start transferring files to it. You can either use the command prompt, or the File/Open dialog of Notepad to move the files...

8 - You are going to be looking for the pending.xml file for the installation. Please note that it might be on D: not C: because of the System partition that Windows 7 sets aside. DO NOT FREAK OUT IF YOU GO TO C:\ AND THERE IS NO WINDOWS, GO TO D: IN THIS CASE

9 - Use File/Open to browse to (either C: or D:, see above) and \windows\winsxs\. Make sure to have "All Files(*.*)" selected in the bottom right so that you can see the xml files.

10 - Make a copy of pending.xml by dragging it down in the file/open screen (just because we are paranoid)

11 - Open up pending.xml. This will take a LONG time because it is a LARGE file. Just be grateful Notepad can handle it.

12 - Do a search for 000000000000.cdf-ms. This is the section you are going to remove.

13 - Delete the section that includes it. In thewoot's directions he has you start with the <Checkpoint/> file BEFORE it and continue through to the end of the section that contains it, as he points out, the text may vary slightly... This will take a while (big file)...

<Checkpoint/>
<DeleteFile path="\SystemRoot\WinSxS\FileMaps\_0000000000000000.cdf-ms"/>
<MoveFile source="\SystemRoot\WinSxS\Temp\PendingRenames\e56db1db48d4cb0199440000b01de419._0000000000000000.cdf-ms" destination="\SystemRoot\WinSxS\FileMaps\_0000000000000000.cdf-ms"/>

14 - SAVE THE PREVIEW.XML FILE!!! This will take a while (big file)...

15 - Close notepad

16 - Exit the command prompt (type 'exit' or just close).

17 - Select Restart...

16 - It may take a bit to boot up. In our case the install 'failed' (woohoo!!!) but in other cases it might claim to 'succeed' whatever that means at this point...


So what does this all mean? I know that it is instinctual to blame MSoft, but I suspect this has to do with a 3rd party changing files. I say this because this installed fine on a number of boxes but failed on someone who does graphic design. It is quite simply impossible for MSoft to test all the various scenarios that exist in the entire world, so I am giving them some slack. As long as they fix it quickly!

What are the takeaways that I get out of it?

  1. ALWAYS testbed your updates. This is a no-brainer, or should be, but sometimes admins tend to assume that simple because it works 99% of the time it will work 100% and this simply is not true. I know there is a LOT of other stuff to do, but do not blame MSoft because they cannot test EVERY SINGLE situation.
  2. The larger the update the more testing. I installed this on a couple of boxes BEFORE I rolled it out to my testbed. Then I waited a bit. Because I was so careful I only had to repair one computer rather than who knows how many...
  3. Have a beer... there are far greater catastrophes happening even as you read this, be grateful that this is not one of them...
Hope that helps...
# Tuesday, July 06, 2010

Error 80070643 installing KB 974417 on Windows XP

First off, I apologize for the lack of pictures. I find they make explanations easier. Unfortunately I resolved this months ago and so all my pictures have been mislaid...

Trying to push out KB 974417 a while back I noticed that certain machines were getting an error. A lot of research via the web uncovered that the issue lay in the fact that those machines had KB 976569 already installed. For some reason this later, not critical update (only important) was preventing KB 974417 from installing. This can happen when a machine is running a variety of updates and gets the order off.

The solution was fairly simple - you just needed to UNINSTALL KB 976569 and INSTALL 974417 and you would be fine. The problem is that you can not UNINSTALL KB 976569 via WSUS. You get a little notification that it can not be selected for uninstall. The probable reason is that it is part of a .net 2.0 update and other updates follow after. So you have to manually uninstall it, or some such.

One of the nice things about WSUS (and also a rather scary security question) is that it runs with higher privileges, which it needs to install the updates. As a result if you have locked users out from installing software willy-nilly (technical term) than you run into a problem when you try to uninstall in that you need to give them the same permissions.

Okay, let's start at the beginning - I won't bore you with all the different permutations I went through in determining my final process - I was writing code to wrap the uninstall in a security wrapper, etc, etc. I will take you to what I did and you can decide for yourself if this is how you want to do it.

  • Note #1 - use MSIExec to uninstall the package. Critical note, you can not specify the package itself (since this is an update to .net) you need to specify the GUID of .net and then the GUID of the package itself. Like so:
    msiexec /package {C09FB3CD-3D0C-3F2D-899A-6A1D67F2073F} /uninstall {621253FA-14E8-34AB-82B3-22590E6A961A} /passive
  • Note #2 - I wrapped the MSIExec in a little C# program I used to bump up the perms - basically I used the ability of ProcessStartInfo to pass in a username and password (thanks to David Hayden's nice post on this). I will expand on that in another post if someone asks. I had the dickens of a time (another technical term) using Runas which might seem the more obvious way to go for you non-programmers, but never could get it to work. This was quick and dirty for me.
  • Note #3 - I stuck the C# program (called RemoveKB976569.exe) out on Netlogon and used schtasks to remotely create a timed task to run on whatever remote computer I wanted to affect. Like so:
    schtasks /create /s \\<computername> /RU <adminUsername> /RP <adminPassword> /TN RemoveKB /TR <domainControllerNetlogonPath>\RemoveKB976569.exe /SC ONCE /ST <timeToRunTasks> /V1

Now, granted, you could touch every box if you wanted to. This was my attempt not to have to. Complicated, yes. Successful, yes.

Have fun...

# Wednesday, April 21, 2010

Wsus Windows 2008 R2 x64 giving Error Code 80070490 on KB937723 update

My Windows Update service on one a w08r2 x64 box told me that I had an update.

So I checked and discovered that it was KB967723.

I ran the install but it failed with error code 80070490

After trying various solutions (such as turning off the Windows Update service and moving the log files) I finally manually downloaded the problematic file and installed it. No more problems. I don't know what was the issue - was it snagging the x86 version? was it getting the Vista one? Whatever triggered it, this resolved it.

Download Locations: