c# - Zebra EPL/ZPL 上的 .NET 网络套接字打印

标签 c# .net zebra-printers zpl-ii epl

我需要在 Zebra 网络打印机上打印。由于某些原因,我无法使用 winspool 打印 ( http://support.microsoft.com/kb/154078 ),我必须通过 IP 和端口上的套接字直接打印。这是我的打印方法:

System.Net.Sockets.TcpClient zebraClient = new System.Net.Sockets.TcpClient(); 
        try 
        { 
            zebraClient.SendTimeout = 5000; 
            zebraClient.Connect(IP, port);
        } 
        catch (Exception ex) 
        { 
            Utils.ShowError(ex); 
        } 
        if (zebraClient.Connected) 
        { 
            NetworkStream nStream; 
            nStream = zebraClient.GetStream(); 
            StreamWriter wStream; 
            using (nStream) 
            { 
                wStream = new StreamWriter(nStream); 
                using (wStream) 
                { 
                    wStream.Write(content); 
                    wStream.Flush(); 
                } 
            } 
            zebraClient.Close(); 
        } 

问题是,有时会出现“无法创建连接,因为目标计算机主动拒绝它”的异常。我不知道为什么会这样(可能是完整的打印机缓冲区 - 如果是这样,我如何用两种语言检查它?)。所以我问是否有人遇到过这个问题,我该如何解决?

最佳答案

尝试端口 9100。并确保您可以在网络上看到打印机 IP。

关于c# - Zebra EPL/ZPL 上的 .NET 网络套接字打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10856917/

相关文章:

java - 如何将字节数组数据打印到Zebra打印机?

javascript - Java Applet 未定义

vb.net - 在 ZPL 标签打印机上使用位图

c# 是否可以获取对象的引用,获取对象本身并更改它,而不是分配给新对象?

c# - 有没有办法在运行时动态加载数据提供者?

.net - 当内存需求超过预定义限制时中止算法的执行?

java - 匹配具有不同顺序和数字格式的嵌套元素

c# - 如何在 C# 中更改 NaN 字符串表示形式?

c# - 如何清除最高有效位?

c# - 接口(interface)——有什么意义?