У меня есть программное обеспечение, которое печатает только на COM-порт. У меня есть только USB-порты.

Я попробовал это решение Как сопоставить виртуальный COM-порт с физическим USB-портом? но NET USE COM66: \\name\printer /persistent:yes команда выдает system error 67

Я поделился своим принтером, как предложено в предыдущем вопросе.

Примечание: я не могу использовать какие-либо адаптеры. Мне нужно программное решение

1 ответ1

1

Не существует современных принтеров, которые выполняют печать через COM-порт, даже большинство старых принтеров используют параллельные (Centronics) порты SPP или EPP. Единственные COM-принтеры, которые я помню, были "терминального" типа, с головками типа гирлянд, или печатными машинками IBM, 40 лет назад. Возможно, некоторые POS-термопринтеры все еще используют этот интерфейс.

Таким образом, если вы говорите, что он «печатает на COM-порт», это, вероятно, означает очень простой поток символов ASCII, строки / строки заканчиваются символами CR-LF. В то время как все основанные на USB растровые принтеры используют некоторый язык высокого уровня (PCL или PostScript) для управления принтером. Даже если вы отобразите свой выход на виртуальный порт COM / USB, результирующий поток данных будет ASCII-CR-LF, и ни один USB-принтер не сможет это понять.

То, что вы, вероятно, можете сделать, это каким-то образом виртуально подключить выход COM к приложению "терминала" Windows, а затем использовать сгенерированное растровое изображение в качестве изображения для печати (включая принтеры с интерфейсом USB). Это выглядит некрасиво, но печать через COM-порт - взрыв из глубокого прошлого.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .