我需要拦截发送到Windows上的ESC / POS打印机的数据并进行分析。
所以我想以纯文本的方式获取数据,以便我可以提取并理解发送给打印机的信息。
目前,我已经尝试使用RedMon来获取发送到打印机端口的数据stream。 但是发送的数据是光栅graphics的forms,即要打印的点,embedded在ESC / POS命令中。
所以我想知道是否有人可以build议我如何获得文本格式的打印数据,以便能够从中提取一些信息。
batch file在不信任的情况下跨域添加打印机
Windows使用LPR从命令行打印PDF作为文本打印
免费的打印机打印到PNG(或SVG)
我可以使用ECHO来执行命令吗?
打印RTF文件(带对话框)
打印机驱动程序之间的差异
有关从Windows服务打印的第三方库/组件的build议
检查打印机是否连接
使用USB端口进行通用打印
发送到ESC / POS打印机的数据是用ESC / POS命令嵌入的光栅数据。 这是ESC / POS打印机驱动程序从其输入生成的内容。 这就是RedMon为你所做的。
似乎你想看到发送到打印机驱动程序的输入 。 这意味着您必须找出哪些应用程序使用打印机,并且必须拦截到达打印机驱动程序的内容。
您不会说如果您想在“实时”环境中设置截取,或者仅用于临时测试。 如果您想临时测试,可以选择执行以下步骤:
暂停打印队列(上面的截图,下面)。
可选:将驱动程序从ESC / POS改为PostScript或Microsoft XPS。 如上所述,在打印机属性对话框的相同“高级”选项卡上执行此操作。 (下面的屏幕截图如下)。
打印。
检索在假脱机目录中等待的假脱机文件。 在Windows 8上,默认情况下是C: Windows System32 spool PRINTERS 。 NNNNN.spl名为NNNNN.spl ,其中NNNNN是当前打印作业的编号。
分析PostScript或XPS数据。
看到这3个截图:
但是,如果你…更容易(而不是使用RedMon)…
…只需启用名为“保留打印文档”的打印机驱动程序设置即可:转到打印队列属性=>选择“高级”选项卡=>启用相应的复选框(请参阅上面的左侧截图);
…分析你的NNNNN.spl文件:
在Windows 8上,这将是一个XPS文件。 重新命名为NNNNN.xps,您可以使用内置的XPS查看器打开它。
在以前版本的Windows上, NNNNN.spl将具有相应打印机驱动程序(PostScript驱动程序的PostScript,Microsoft XPS打印机的XPS,打印机的ESC / POS等)的文件格式。 重命名它,并在XPS或PostScript查看器中打开它。
你可以把爱普生POS打印机调试模式,他们将打印输入数据十六进制转储。 请参阅此pdf的第88页: http : //www.pos.epson.com/epsonexpertTSG/Templates/POS_Developers_Details.aspx? NRMODE = Published&norORIGINALURL =% 2fdevelopers%2ftechresdetails%2ehtm%3fproductpk%3d642&NRNODEGUID =% 7b934F5A6D-E01A-40B1- B2B0 -648C1EC68047%7D&NRCACHEHINT = NoModifyGuest&productpk = 642
要了解这一点,如果您注册并同意他们的条款,可以获得Epson ESC / POS SDK: https : //www.epsonexpert.com/ee/prelogin/registration.htm
如果你只是想捕获你可以创建一个TCP / IP打印机端口,指向一个工作站的IP,并运行我的vclpdcap工具。 它监视9100或515(RAW或LPR)并将数据捕获并写入文件。
看看这里,如果你需要更多的指导让我知道。
http://www.ballisticecho.com/articles-and-downloads/print-capture-lpd-9100
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。