We'll need to do a general troubleshooting to see if we can identify and resolve the problem. Skip any steps that require booting into normal mode for now and then reply with results. Use the disk or safe mode where required.
Do you know when this problem began? Try a System Restore to a point in time BEFORE the problem began. Here's the procedure: http://www.vistax64.com/tutorials/76905-system-restore-how.html. Be sure to check the box to show more than 5 days of restore points. If the first attempt fails, then try an earlier point or two. NOTE: You will have to re-install any software and updates you installed between now and the restore point, but you can use Windows Update for the updates. Use the recovery disk if the system prompt doesn’t work. The recovery disk works a bit different from the above procedures but if you follow the prompts from the System Restore menu option with the above information you should be able to restore with no problems.
If the System Restore doesn't work, do a Startup Repair by booting to the genuine Windows Vista Installation Disk (or one you can borrow from ANYONE) or from a Recovery Disk with recovery options included on it. Here's the procedure: http://www.vistax64.com/tutorials/91467-startup-repair.html. To boot to the CD you may need to change the BIOS to make the CD-drive first in the boot sequence. To do that, wait for the screen that tells you the F key to push to access the boot menu or boot setup. Push it quickly. Make the changes, save your work, and exit. Put the CD in the drive and reboot. When prompted, push any key to boot from the CD.
If that doesn't work, try to boot into safe mode (repeatedly click the F8 key while booting and go to safe mode with networking – or do so from the command prompt on the disk). Then let's check some of your system files:
Go to Start / All Programs / Accessories / Command prompt and right click on command prompt and click run as Administrator (you can skip this step if using the disk).
If using the disk, cd to C:\Windows\System32. Type sfc /scannow and enter and let it run. It will scan and try to fix some of your system files. Hopefully it will complete with no corruption it could not repair (if there is such corruption post back here or try to analyze it to find the problem file(s) using http://support.microsoft.com/kb/928228. Try to attach the report (you may need to copy it to your desktop before it will permit you to attach it) here so we can see if they can be repaired with good copies from the installation disk (unless there are too many).
While in Command Prompt, type chkdsk /f /r and enter and let it run. It will want to schedule itself to run at the next restart. Answer yes and then reboot to run the program. It will scan and try to fix any corruption or bad sectors on your hard drive and mostly remove that as a potential cause.
If that doesn't work, then please post any error messages from the Event Viewer concerning startup (Start / Control Panel / Administrative Tools / Event Viewer). Here's how to use Event Viewer: http://www.petri.co.il/vista-event-viewer.htm. Look in the System section.
That's all we'll try for now and see what those procedures do and if they provide and clues on what else to try.