Hey,
I use a home built LIRC infared receiver. It costs $8 to build and I had left overs (resistors, diodes and so on.)
More information can be found about it here...
http://www.lirc.org/
It was developed for Unix but there is a windows version of the software.
Edit: Pawn mentions having trouble getting this unit to control DVD but I have had no problem using it with Zoomplayer or anything else for that matter. It just received Signals so it works equally well for any Application, provided there's enough CPU cycles which it what may have been the problem with Pawn's case.
I use it with Girder that same way an IRMAN would be used.
I would also not suggest building one since IRMAN is cheap. Building one is only for the fun of it really.
I've used the IRassistant mentioned above but didn't like it because (at that time) you could not disable the splash screen on startup. Now, Girder is almost a HTPC standard component so it's easy to get help with it. I would imagine the number of HPTC's running Girder is similar to the number of HTPC's running a Radeon. It's that much of a standard so it's a good recommendation.
Good Luck,
Brian