I did some work on this subject--in Cpp--at one point and it's a more difficult situation then one would expect. -i.e. if I remember properly, you can COPY a file to the COM/LPT port (COPY /B filename LPT1:) but the output depends file type you have (TXT, PS, PDF, etc.). In the end it is a big mess.
The knowing which COM/LPT port to send the information to is another big nasty problem. For my Cpp project I choose to use Redmon. Ultimately, I created redirected printer port(s) -i.e. connected a windows print driver to a redirected printer port and then used "redpr" (a better `copy to printer port method') to print my files. ...in the end, it is a bit of a mess and in the end, you'd probably be better off (save yourself a bunch of time) installing Redmon on everyone's machine (this can be automated).