"STOP: c000021a {Fatal System Error} ... status of 0xc0000135"

Have been struggling this morning with a Windows XP PC which was in a reboot cycle displaying the following error:
STOP: c000021a {Fatal System Error}
The Windows Logon Process system process terminated unexpectedly with a status of 0xc0000135 (0x00000000 0x00000000).
The system has been shut down.
God there's a load of crap on the internet - including in the Knowledge Base. "Do a chkdsk. Check the memory" which is all fine and well but it doesn't analyse the problem the computer is actually reporting (although Microsoft take 90% of the blame here for not properly publishing error codes.  More posts, including Microsoft, said "do a repair install" but that would have broken stuff I didn't want to break, and doing a re-image would have been inconvenient. Better to see if it could be fixed.

Most STOP 21A errors point to issues in winlogon.exe and csrss.exe but the "status of 0xC0000135" was an important differentiator between those and this, and it wasn't until I unearthed this blog, this forum post and a post by "Richard" on this forum page which led me to this crusty old NT4 Knowledge Base article that the solution emerged. A DLL file was missing from c:\windows\system32. But which one? And how to bring it in while causing minimum impact?

First I went to a working computer and copied all DLLs in \system32 to a folder on a USB key. Then I booted a Windows 7 install CD and went into the repair console. Why? Because the WinXP console is very limited, being unable to run offline system file checking or XCOPY. Then I did an XCOPY from the USB stick to c:\windows\system32, answering no to overwrite existing files. A bunch of stuff came in, mostly linked a scanner which wouldn't have been common to both, but some graphics dlls came in too.

We're migrating to Windows 7 so hopefully this isn't one I'll have to deal with again but am publishing it here in case some other poor soul comes across it.

Comments

FlorDelSur said…
Hi there, today I have woken up to this error! Your post seems to know what it's talking about. I am just copying my dlls now and will give it a go.
FlorDelSur said…
Thanks for posting this! I woke up to this error today. Am going to give it a go...
FlorDelSur said…
Hi I wonder if you could give "for dummies" instructions on how to do what you describe below? The repair console is not coming up, nor do I know what an Xcopy is. Thanks!

"Then I booted a Windows 7 install CD and went into the repair console. Why? Because the WinXP console is very limited, being unable to run offline system file checking or XCOPY. Then I did an XCOPY from the USB stick to c:\windows\system32, answering no to overwrite existing files. A bunch of stuff came in, mostly linked a scanner which wouldn't have been common to both, but some graphics dlls came in too."
Mario said…
Thanks for posting this. Copying all the .dll files from a working computer's \system32 directory to the nonworking computer's \system32 directory and not overwriting the existing files worked for me.

Popular posts from this blog

What is the virtue of a proportional response?

"Your request could not be completed. Please try again in a few minutes."

Remote Desktop Connection Manager - a boon for admins