Typically viruses are much easier to deal with than spyware. We're getting systems in our shop now that have adware trojans running on them that even our experts cannot get rid of. Unfortunalty there is NOT a silver bullet answer to your question or a single magic program that you can run that will solve your issues despite the claims.
Our usual course of action involves editing the registry, pulling the drive and slaving it to a good system and scanning it that way, manually removing files and so on. Not a task for the faint of heart. I would recommend obtaining a copy of a free utility called HIJACK THIS and run a check. there is an option to save the results as a log.
DO NOT START CHECKING AND REMOVING ITEMS!!. Unless you know what you are looking at, you could seriously hose your system. Submit the log file to this discussion and we can help you a little more in depth. Chances are good that you have some nasty spyware and the only way to effective way to deal with it is to have a more experienced persion look at the Hijack This log and make recommendations. Much of the time, removal also may require editing the registry, going to extreme measures to remove trojans that "heal" themselves because they are running in memory and so on. Depending on your skill level, it may be that the only effective way to deal with it is to re-format and start over.
In summary, submit a hijack this log and lets see whats happening. By the way, forget system restore, that will not help but only hurt in a viral situation.
hope this points you in the right direction.
Robert