I actually learned the trick of setting a 'verbal contract' from my phone tech support days, then refined it a bit to fit my onsite service:

Before any work is done, discuss with the client precisely what is to be done to their machine.

If the job is taking a bit of time to do, keep the client updated on what you're doing and what you've accomplished. ("Things are going great, Mrs. XYZ, I've replaced the video card like we discussed, and now I'm doing the computer cleanup as you requested.")

After the job, sit down with the client and go over exactly what you did. This is best done with your invoice in hand so you can go over that with them as well, line by line.

Since the client now knows exactly what you did to which, they're aware of exactly what is covered by your 'stand by my work' guarantee. If they call you out again on it, and it's something else, you can bill accordingly.

[edit]HT was spot-on with his 'policy system' as well. In fact, I like that better than my own, but my business was a lot more informal since I'm in a rural area and my clients were my neighbors as well.[/edit]

[moredit]As for the AV scenario you gave - it's simple to handle really. At the time of install you tell the client that you stand by your work, not the work of the software manufacturers, and that no matter the levels of protection they get, they still might get a virus. Take a moment or two to teach them good computer hygeine during this as well to help them protect themselves further, or better yet, print out a sheet on the order of 'ten commandments for healthy computing' for them... make it light and fun, and easy to understand.

Hope all that helped![/moredit]