Printing WINCE打印到Zebra QL220的效果仅为一次

Printing WINCE打印到Zebra QL220的效果仅为一次,printing,bluetooth,windows-ce,Printing,Bluetooth,Windows Ce,我使用下面的代码从测试表单打印到Bluetooth Zebra QL220 Plus打印机。(测试项目是在我在主项目中遇到此问题时设置的) 我第一次运行这个程序时,它打印正确。 再次运行完全相同的(未更改的)代码完全没有任何作用 Dim wSerialPort As SerialPort = New SerialPort() wSerialPort.BaudRate = 19200 wSerialPort.Handshake = Handshake.XOnXOff wSerialPort.Da

我使用下面的代码从测试表单打印到Bluetooth Zebra QL220 Plus打印机。(测试项目是在我在主项目中遇到此问题时设置的)

我第一次运行这个程序时,它打印正确。 再次运行完全相同的(未更改的)代码完全没有任何作用

Dim wSerialPort As SerialPort = New SerialPort()
wSerialPort.BaudRate = 19200
wSerialPort.Handshake = Handshake.XOnXOff 
wSerialPort.DataBits = 8
wSerialPort.Parity = Parity.None
wSerialPort.StopBits = StopBits.One
wSerialPort.PortName = "COM9:"
wSerialPort.ReadTimeout = 500
wSerialPort.WriteTimeout = 500

wSerialPort.Open()
wSerialPort.Write("! 0 200 200 600 1" & vbCrLf)
wSerialPort.Write("LABEL" & vbCrLf)
wSerialPort.Write("CONTRAST 0" & vbCrLf)
wSerialPort.Write("TONE 0" & vbCrLf)
wSerialPort.Write("SPEED 5" & vbCrLf)
wSerialPort.Write("PAGE-WIDTH 419" & vbCrLf)
wSerialPort.Write("T 7 1 40 141 Hello" & vbCrLf)
wSerialPort.Write("FORM" & vbCrLf)
wSerialPort.Write("PRINT" & vbCrLf)
wSerialPort.Close()
无论我做什么:

  • 从打印机上拔下电池
  • 硬重启WT41N0设备
  • 使用BTExplorer重新连接打印机
  • 重新启动程序
  • 以下代码在调试器中逐步执行,但完全不执行任何操作

    Dim wSerialPort As SerialPort = New SerialPort()
    wSerialPort.BaudRate = 19200
    wSerialPort.Handshake = Handshake.XOnXOff 
    wSerialPort.DataBits = 8
    wSerialPort.Parity = Parity.None
    wSerialPort.StopBits = StopBits.One
    wSerialPort.PortName = "COM9:"
    wSerialPort.ReadTimeout = 500
    wSerialPort.WriteTimeout = 500
    
    wSerialPort.Open()
    wSerialPort.Write("! 0 200 200 600 1" & vbCrLf)
    wSerialPort.Write("LABEL" & vbCrLf)
    wSerialPort.Write("CONTRAST 0" & vbCrLf)
    wSerialPort.Write("TONE 0" & vbCrLf)
    wSerialPort.Write("SPEED 5" & vbCrLf)
    wSerialPort.Write("PAGE-WIDTH 419" & vbCrLf)
    wSerialPort.Write("T 7 1 40 141 Hello" & vbCrLf)
    wSerialPort.Write("FORM" & vbCrLf)
    wSerialPort.Write("PRINT" & vbCrLf)
    wSerialPort.Close()
    
    我有一个想法,我可能有错误的页面大小,打印机停止了标签之间的差距,但重新加载标签卷没有效果

    有什么想法吗

    硬件: QL220 Plus打印机 设备WTN41N0 使用.NET3.5的VS2008
    Dev OS Windows 8.1

    由于打印机似乎使用RFCOMM协议,模拟串行端口,因此您可以尝试使用支持蓝牙功能的PC替换打印机,并使用终端应用程序查看第一次收到的内容,然后查看以下内容,了解您的设备在第二次打印时是否正在发送数据,以及与第一次发送相比是否存在差异