Sorry for the vague nature of the question. I would like to have a service (on a server(windows)) broadcast itself as a printer, or listen for connections on a TCP port. I would then like to be able to 'add' my service as a printer to client machines. When client machines print to my service, I would like to read the data, then send an email with its contents out to myself. Then send a message back to the client saying 'print successful'.
So what advice do you have, and/or what terms would I google to get started?
thanks!
[update] here is a SO link: Writing a Virtual Printer in .NET
the answer from Douglas Anderson was intriguing, but is it really plausible?
You could simply have your app expose itself like an LPD type printer or monitor port 9100. You could then install any print driver you like, and point it a your app.
[update2]
I've setup a printer on my local machine using LDP on port 55555 with the Generic / Text Only driver provided by Windows. Lets assume I have a TCP service listening on that port running. lets assume i successfully retrieve the data package from the printer.
How do I extract normal ascii text from the data package, and then let the sending device know that the print job was successful?