我试图在财政打印机EPSON TMT81中打印,我在VB中有示例代码,我需要在C#中做同样的事情,我使用EpsonFPHostControl。OCX 1.9
基本工作是通过COM端口向打印机发送命令,我没有问题连接到端口,但我无法通过端口发送命令。
要在 VB 中发送 commnad,代码为:
'*** PROBAR CONEXION CON IMPRESOR FISCAL ***
'*** CHEQUEA ESTADO DE IMPRESOR FISCAL ***
EpsonFPHostControl1.AddDataField (Chr$(&H0) & Chr$(&H1))
EpsonFPHostControl1.AddDataField (Chr$(&H0) & Chr$(&H0))
'*** ENVIA COMANDO FISCAL ***
EpsonFPHostControl1.SendCommand
我试图在 C# 中做同样的事情:
//*** PROBAR CONEXION CON IMPRESOR FISCAL ***
//*** CHEQUEA ESTADO DE IMPRESOR FISCAL ***
EpsonFPHostControl1.AddDataField("H0H1");
EpsonFPHostControl1.AddDataField("H0H0");
//*** ENVIA COMANDO FISCAL ***
EpsonFPHostControl1.SendCommand()
但它不能很好地工作:/,会计打印机接收命令,但返回代码 513 无效的 comand 帧 (frame de comando invalido)
我感谢一些帮助。
c# 中的命令是错误的。您必须发送带有控制字符的字符串。基本Chr$($H0)
在 c# 中表示"\x00"。这应该有效。
EpsonFPHostControl1.AddDataField("x00x01");
EpsonFPHostControl1.AddDataField("x00x00");