Я экспериментирую с термальным принтером Zebra TTP8200. Для моего приложения мне нужно непрерывно печатать следы типа плоттера, пока пользователь не нажмет кнопку остановки. У меня была игра с языком ZPL, и я могу успешно генерировать растровые данные и выгружать свою растровую линию (или несколько строк) за раз, вызывая ZPL как необработанные данные.
Я использую какой-то демонстрационный код Microsoft для вывода необработанных данных на принтер, и это отлично работает, запустите одну проблему: спулер. Оказывается, каждый раз, когда я вывожу некоторые данные с помощью кода MS rawprn.exe, он фактически буферизуется как задание на печать и затем передается на принтер. Это займет до 10 секунд, чтобы пройти через спулер, очевидно, слишком медленно. Отключение буферизации в драйвере не помогает, это просто означает, что программа зависает, когда задание передается через спулер, и печать завершается.
Есть ли способ обхода буферизации и вывода данных прямо на этот USB-принтер? До сих пор мои исследования не обнаружили ничего похожего на Windows API. В идеале я бы хотел использовать принтер, как это был последовательный принтер, - откройте порт и запустите данные.
Большое спасибо заранее за любые подсказки!