Jan Axelson's site also covers detail of using ports, including useful programming information. http://www.lvr.com
Resources for interfacing to Windows
LOGIX4U has written a DLL to allow arbitrary port accesses from your program under all versions of Windows, and released it into the public domain. This DLL is an essential part of making GunFire run on WinNT and derived versions of Windows. http://www.logix4u.net
MSDN and the Microsoft knowledge base are generally useful as a reference. http://msdn.microsoft.com
This particular article provided the information required for getting parallel port (LPT) and serial port (COM) I/O details from the registry (which does not seem to be otherwise documented). http://www.microsoft.com/msj/archive/S225.aspx