I have had a pc running for over a year now. It was all working fine until one day it wouldn't boot. It does all the memory checks etc but when it reaches the windows log on screen if i leave it it will reboot and if i try to log on to windows it will reboot. I have checked the RAM and that isnt the problem. Any ideas!?
Thanks in advance for all your help.

You know, I really hate commercials, but boot in safe mode and run scandisk and see if anything visible is f'ing with your box, go into msconfig, look for suspicious services and startup programs

see if it will boot using an xp boot disk(floppy). you can make one from any xp machine. just unhide any hidden folders or protected operating system files go to the root of C. then copy NTLDR, NTDETECT.COM and BOOT.INI to your floppy (also NTBOOTDD.SYS if you have a SCSI drive)
this usually works for all xp machines. if it boots ok you could have a corrupt boot sector. this can be fixed by booting off the xp cd and going into the recovery console, log into C once you get to the prompt type FIXBOOT and enter then Y to confirm. then type FIXMBR then enter Y to confirm. this may well sort it.
however first it may be that something like the soraci virus caused the problem in the first place, this makes the machine loop continuously on boot. to check this i would take the drive out and hook it up to another machine with a good anti virus as a slave and give it a scan with anti virus/anti spy before anything else