POS打印机自动识别

时间:2011-03-11 07:52:32

标签: c# posprinter

我有许多POS打印机,需要自动识别打印机的类型。我需要不使用POS.NET或打印机驱动程序。我怎么能这样做?

3 个答案:

答案 0 :(得分:2)

没有标准方法来识别这样的打印机。

在一般情况下很难或不可能(打印机可能使用不同的COM端口配置 - 波特率等 - 以及不同的协议)。由于许多打印机可以通过DIP开关或发送命令以不同方式配置,因此更加复杂。

如果您只有相当少的打印机可以识别,但是您知道正确的COM端口配置,您可以尝试发送命令/读取响应以找到允许您在打印机中唯一识别打印机的组合支持。

许多POS打印机支持ESC / POS协议的变体,对状态请求的响应(查看每个打印机的手册)可能会有差异,使您能够区分。

当然,您将面临持续的维护问题 - 每次您想要支持新的打印机型号时,您将不得不再次尝试找到一些与众不同的特性并更新您的识别软件。

答案 1 :(得分:1)

在源代码中查看支持大量POS打印机的项目:

http://dev.cyberplat.com/redmine/repositories/browse/pt/2.0/src/Modules/Devices/Printers/Printers/Implementation1/src

在每台打印机的实现中,您可以找到用于自动搜索连接的打印机的识别子程序。

答案 2 :(得分:0)

刚刚进行了快速谷歌搜索,也许您可​​以列出可用的打印机,例如:http://www.c-sharpcorner.com/UploadFile/mahesh/printerslisting06072007092859AM/printerslisting.aspx

在这里:

How to get Printer Info in .NET?

不确定这是否只列出已安装的打印机或在线打印机?