首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >确保连接到通过COM连接的POSPrinter

确保连接到通过COM连接的POSPrinter
EN

Stack Overflow用户
提问于 2009-09-08 14:25:02
回答 2查看 1.5K关注 0票数 1

在将数据写入数据库然后打印收据之前,我需要确保成功连接到POS打印机。POSprinter通常是BTP2002NP类型,但可能有所不同。常见的情况是,它们都是通过COM端口连接的,而不是usb,因此客户端上根本没有安装驱动程序。

我是否可以在COM端口上发送某种"ping“命令,并检查设备是否已连接并打开?任何帮助或建议都是非常感谢的。

更多信息,该应用程序是在VB.net和Visual Studio2008中开发的

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-09-08 14:30:19

您所能做的就是向com端口写出一个字符串,然后等待,看看您的打印机是否会做出响应。但是,您编写的字符串和期望的字符串将取决于打印机本身。

参考BTP 2002NP printers programming manual中的例子(我看过的谷歌的第一个链接)

从手册中可以看出,要发送给打印机的适当字符串是"DLE EOT n“命令,该命令请求打印机发回其当前状态。

至于该系列中的其他打印机,请查看this list of drivers and manuals

票数 1
EN

Stack Overflow用户

发布于 2009-09-11 07:05:41

顺便说一句,这就是我最后想出来的。

代码语言:javascript
复制
   Public Function ComTest() As Byte()

    Dim TXT As String
    TXT = Chr(&H10S) & Chr(&H4S) & Chr(1) 'DLE EOT 1

    If OpenCom() Then 'Connect to com
        moRS232.PurgeBuffer(Rs232.PurgeBuffers.TxClear Or Rs232.PurgeBuffers.RXClear)
        moRS232.Write(TXT)
        moRS232.Read(1)
        Return moRS232.InputStream
    Else
        Return Nothing          
    End If

End Function

该函数返回1个字节。然后,我可以从手册中将此字节转换为打印机当前所处的状态。这可能适用于所有ESC/P打印机。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1394328

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档