A full disk check followed by system restore worked for me
I tried 101 different things (suggest by my googling for the error) over yesterday and the day before and had eventually decided to do a clean install.
However, it was late at night when I made this decision, so I thought, just because it would be quick for me, I'd start a full disk check running and go to bed.
I started the PC from a Windows installer DVD, ran a command prompt, changed to the C: drive (type in "C:" - remove quote mark when typing the command) and did a full disk check (chkdsk /r) - which takes ages because it checks every sector of the hard disk for errors.
In the morning, I ran a system restore (date chosen was prior to the last batch of Windows updates - previous restore attempts had failed) and then tried starting up normally - and it worked.
My conclusion (guess?) is that there must be some bad sectors on the drive and these ended up being used when those updates were installed.
The full disk check marks those bad sectors as not to be used and so the restore was able to work because it didn't involve stuff being written to bad sectors.
I'm now plodding through doing the 20+ updates that were lost when I did the system restore, hoping that they'll all go on nicely.
[Update - the updates did go on okay. Phew! Just finishing off using CCleaner to get rid of left-over temp files and orphan registry bits, following up with a defrag and optimise]
Bob C