Not much is involved if you use a small micro-controller module or the like. For Windows (assuming .Net) you can use the SerialPort class provided in System.IO.Ports. In most cases you use a mini ASCII protocol of your own design. i.e. Your Windows app sends single characters that are processed in the micro via a switch statement with each character interpreted as ON or OFF for a given output based on defined constants...simple. You just a device you can talk RS232 with...
There are literally hundreds of devices with the handful of I/O and serial ports you need...picking one is another question all together. You'll want to start with a development kit or a pre-built solution. Here is an incredibly short and incomplete list of options for a start...by price, lowest first..
- For low cost Parallax
is a good place for a start. One of
the Basic
Stamp
controllers should meet your needs if
you are up for some
boarding...If not you might look at
the Stamp
PLC
or one of the multiple starter/dev kits.
- The PIC controllers from Microchip are insanely popular.
CCS has a great compiler for the PIC with loads of sample code and a good selection of devkits.
- Rabbit
makes some more advanced boards that
might be worth a look if WiFi, USB,
Ethernet etc. are in your future.
I'd suggest starting with a Parallax product and go from there.