Автоматическое распознавание на POS-принтере - PullRequest
0 голосов
/ 11 марта 2011

У меня есть несколько POS-принтеров, и мне нужно автоматически распознать тип принтера.Мне нужно сделать это без использования POS.NET или драйверов принтера.Как я могу это сделать?

Ответы [ 3 ]

2 голосов
/ 11 марта 2011

Не существует стандартного способа распознавания принтеров, подобных этому.

В общем случае это сложно или невозможно (принтеры могут использовать другую конфигурацию COM-порта - скорость передачи данных и т. Д. - и разные протоколы).Это усложняется еще и тем, что многие принтеры могут быть настроены по-разному с помощью DIP-переключателей или путем отправки команд.

Если у вас достаточно небольшое количество принтеров для распознавания, для всех из которых вы знаете правильный COMПри настройке порта вы можете поэкспериментировать с отправкой команд / ответов на чтение, чтобы найти комбинации, которые позволят вам однозначно идентифицировать принтеры среди тех, которые вы поддерживаете.

Многие POS-принтеры поддерживают варианты протокола ESC / POS, и ответы на запросы о состоянии (см. Руководство к каждому принтеру) могут иметь различия, которые позволят вам провести различие.

Конечно, выПосле этого у вас постоянно будут проблемы с обслуживанием - каждый раз, когда вы захотите поддержать новую модель принтера, вам придется снова пытаться найти отличительную характеристику и обновить программное обеспечение для распознавания.

1 голос
/ 17 апреля 2011

Взгляните на этот проект, который поддерживает множество POS-принтеров в исходных кодах:

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

В реализации каждого принтера вы можете найти подпрограмму распознавания для авто- поиск подключенных принтеров.

0 голосов
/ 11 марта 2011

Только что сделал быстрый поиск в Google, может быть, вы можете просто перечислить доступные принтеры, пример здесь: http://www.c -sharpcorner.com / UploadFile / mahesh / printerslisting06072007092859AM / printerslisting.aspx

и здесь:

Как получить информацию о принтере в .NET?

Не уверен, что в этом списке перечислены только установленные принтеры или принтеры, подключенные к сети?

...