我需要截获发送到Windows上的ESC/POS打印机的数据,并对其进行分析。
所以我想以纯文本的形式获取数据,这样我就可以提取并理解发送到打印机的信息。
目前,我已经尝试使用RedMon来获取发送到打印机端口的数据流。但发送的数据是光栅图形的形式,即要打印的点,嵌入在ESC/POS命令中。
因此,我想知道是否有人可以建议我如何才能获得文本格式的打印数据,以便能够从中提取一些信息。
发布于 2012-09-30 16:32:10
发送到ESC卡/POS机的数据是嵌入了ESC卡/POS机命令的光栅数据。这是ESC/POS打印机驱动程序从其输入生成的内容。这就是RedMon给你抓到的东西。
似乎您希望看到发送到打印机驱动程序的输入。这意味着您必须找出哪些应用程序确实使用了打印机,并且您必须拦截到达打印机驱动程序的内容。
您没有说明是否要在“实时”环境中设置侦听,或者是否仅用于临时测试。如果您想临时测试,您也可以执行以下步骤:
Microsoft XPS暂停打印队列(上方的屏幕截图,below).
NNNNN.spl数据的编号。查看以下3个屏幕截图:



但是,如果您……,它将比使用RedMon容易得多。
打印文件启用名为"Keep print documents“的打印机驱动程序设置:转到”print queue properties“,选择"Advanced”选项卡并启用相应的复选框(参见left screenshot,above);
NNNNN.spl ...simply:- on Windows 8 this will be an XPS file. Re-name it to NNNNN.xps and you can open it with the builtin XPS viewer.
- on previous version of Windows, the `NNNNN.spl` will have the file format of the respective printer driver (PostScript for PostScript drivers, XPS for Microsoft XPS printer, ESC/POS for your printer, ...). Rename it accordingly and open it in XPS or PostScript viewer.
发布于 2012-10-05 09:41:29
如果只是想捕获,可以创建一个指向工作站IP的TCP/IP打印机端口,然后运行我的vclpdcap工具。它监视9100或515 (原始或LPR),并捕获数据并将其写入文件。
看看这里,如果你需要更多的指导,请让我知道。
更新:http://www.ballisticecho.com/articles/print-capture-lpd-9100
发布于 2012-10-06 10:56:10
您可以将爱普生POS打印机设置为调试模式,在该模式下,它们将打印输入数据的十六进制转储。请参阅本pdf第88页:http://www.pos.epson.com/epsonexpertTSG/Templates/POS_Developers_Details.aspx?NRMODE=Published&NRORIGINALURL=%2fdevelopers%2ftechresdetails%2ehtm%3fproductpk%3d642&NRNODEGUID=%7b934F5A6D-E01A-40B1-B2B0-648C1EC68047%7d&NRCACHEHINT=NoModifyGuest&productpk=642
为了理解这一点,如果你注册并同意他们的条款,你可以获得Epson ESC/POS:https://www.epsonexpert.com/ee/prelogin/registration.htm
https://stackoverflow.com/questions/11420237
复制相似问题