I just reformatted in the end. I wanted to change my partition sizes anyway, so I just backed up imortant data and wiped the lot. It all works faster now, too.
As a temporary fix, I found that disabling auto logon stopped the computer from hanging, which was good.
I do have another odd little 'problem' now, though, in that Windows says my computer has a 1.83Ghz CPU, instead of the 2.6 that it does, indeed, possess. I figure this is just a windows problem that doesn't really matter, though.
Thanks for your help.