我使用的是斑马的ZM400 300dpi条码打印机,是通过usb方式连接的,想通过指令方式实现条码打印。
如果通过串口或者并口方式比较容易,直接往串口或者并口发送指令字符串就可以了。但是如果是
通过usb方式连接打印机,怎样把指令发送给usb口呢?
因为现在的很多PC机没有串口和并口了,一般的商务机更加没有这些口了。

解决方案 »

  1.   

    你为什么不用它的驱动呢?直接在本地创建打印机,端口选择usb,驱动选择它的ZM400的驱动,然后打印设备就选择那个打印机,打印指令发送的那个打印设备上就可以了,管他串口并口,编程方式都一样。
      

  2.   

    http://www.ync-tech.com
    看看这个吧~先要安装一下驱动才可以使用
    推荐使用海鸥的驱动http://www.seagullscientific.com/aspx/thermal_95.aspx
      

  3.   

    usb打印机发送命令打印我用两种方法:
    1,安装环路网卡loopback,windonws自带的,然后共享lpt1就可以直接当并口使用了,cmd里就是直接copy指令到lpt1,这个方法百度一下可以找到
    2,使用C#调用默认打印机的方式,先将ZM400设置为默认打印机,再把所有的打印命令全部付给一个变量,再用C#打印这个变量,我一般是把指令存在一个文件里,打印时调用这个文件
    另外,这个打印端口跟驱动没有关系,当然必须要安装正确的驱动,但安装成功后只是在设备里虚拟出一个usb口USB1,你再安装一遍驱动会出现USB2,但我们不能像调用LPT1和COM1那样去使用这个USB1
      

  4.   

    是的,使用串口和并口是容易,就是说如何使用usb口。
    也就是像打印word文件一样的方式的。
      

  5.   

    设置斑马打印机为默认打印机后,打印时系统会自动通过usb端口打印到打印机,不用你再调用USB口了。
      

  6.   

    就是C#的打印啊,最简单的例子:
                            PrintDocument printDocument = new PrintDocument();
                            printDocument.PrintPage += new PrintPageEventHandler(this.pd_PrintPage);
                            printDocument.Print();        private void pd_PrintPage(object sender, PrintPageEventArgs e)
            {
                Font mainFont = new Font("Courier New", 8);
                string strLine = String.Format("{0,0}",  Gb.printstr);//Gb.printstr是全部的ZPL指令,我用的全局变量
                e.Graphics.DrawString(strLine, mainFont, Brushes.Black, PointF.Empty);
            }