0

我试图在财务打印机 EPSON TMT81 上打印,我在 VB 中有示例代码,我需要在 C# 中做同样的事情,我使用的是 EpsonF​​PHostControl。OCX 1.9

基本工作是通过COM端口向打印机发送命令,我连接到端口没有问题,但我不能通过端口发送命令。

要在 VB 中发送命令,代码是:

        '*** 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 无效的命令帧(帧 de comando invalido)

我感谢一些帮助。

4

1 回答 1

0

c#中的命令是错误的。您必须发送带有控制字符的字符串。BasicChr$($H0)在 C# 中表示“\x00”。这应该有效。

EpsonFPHostControl1.AddDataField("\x00\x01");
EpsonFPHostControl1.AddDataField("\x00\x00");
于 2017-01-07T19:13:30.360 回答