2

除了已经安装的软件之外,我正在考虑设计一个在 POS 终端上运行的应用程序。我希望它接收 POS 打印机命令,然后在其中一些命令上拦截和修改它们。因此,例如在打印收据时,我们希望在其中添加自定义参考编号,而无需修改第三方 POS 应用程序。

我很想听听人们对阅读 POS 规范的最佳方法的建议,这似乎并不简单。

4

1 回答 1

2

我认为解决方案是在 POS 应用程序之外执行此操作,但在它理解的级别上进行通信,即打印。一个看起来像打印机的解决方案可以捕获数据、重新格式化然后发送,这样就可以解决问题,或者在打印机端口级别与操作系统(比如说 Windows)进行交互。

在 Windows 中,我们使用我们创建的自定义端口监视器来捕获和路由此数据,这是我们在内部使用的东西,所以我不建议您使用它,因为它有一些错误。类似的解决方案是RedMon。这可以提供解决方案或为您提供有关如何完成它的想法。捕获数据后,您将针对它启动一个进程。

另一种方法是通过网络,您始终可以设置监控 9100 (RAW) 或 515 (LPR) 的东西来拦截数据。

最后,如果它是 Windows 并且您不想创建像 RedMon 这样低级别的东西,您总是可以使用命名管道。您将运行一个将监控命名管道的服务应用程序。来自 POS 的打印机将其端口设置为“本地”,端口为 \.\pipe\。这将允许应用程序与您的服务直接通信,从而启动一个进程。

您可以设置多个命名管道/Redmon/网络端口,每个端口都有一个唯一的关联输出,以定向到另一端的正确设备。

于 2009-09-04T14:56:21.223 回答