views:

753

answers:

3

Is it possible to configure a POS printer service object (an Epson one) from a POS.NET application (such as configuring the IP address for a network connected printer)? It would be nice if it didn't need to be done separately through the applications that Epson provides.

A: 

Not sure I understand completely but here are some general thoughts...

As long as you have access to the device over IP and you know how to code the data you should be able to gnereate your own Epson speciifc output file and send it directly to the IP or to the printer queue.

Check out the following. This will let you send a printer ready file to a 'local printer' that is installed on your system. This allows you to take advantage of the spooler and it's queuing mechanism but not have to send data through their driver/software etc.

How to send raw data to a printer by using Visual C# .NET

The other option is just to open port 9100 (assuming it supports 9100 type connectivity) and binary write out your data.

Douglas Anderson
A: 

Epson stores most connection settings the registry in HKEY_LOCAL_MACHINE\SOFTWARE\OLEforRetail\ServiceOPOS\POSPrinter\YourDeviceName.

We have used this to programmatically set the COM port for our printer, because our application needed to scan COM ports to give a "plug-and-play" type functionality.

You will probably see these settings from regedit, and should able to easily modify them in .Net with the Microsoft.Win32.Registry class.

Jonathan.Peppers
+1  A: 

It turns out that Microsoft POS.NET service objects are configured with XML files. They are placed in %programdata%\microsoft\point of service\configuration. For instance, this allows you to configure a network receipt printer directly from a .NET program simply by writing an XML file.

See this post of the MSDN forums for more information.

codeincarnate