.NET代码将ZPL发送到Zebra打印机

有没有一种方法可以将ZPL(斑马编程语言)发送到.NET中的打印机?

我有在Delphi中执行此操作的代码,但它并不漂亮,我宁愿不尝试在.NET中按原样重新创建它。

回答:

看一下这个线程:使用PrintDocument类将ZPL代码打印到ZEBRA打印机。

具体来说,OP从线程的答案中选择此功能:

[DllImport("kernel32.dll", SetLastError = true)]

static extern SafeFileHandle CreateFile(string lpFileName, FileAccess dwDesiredAccess,

uint dwShareMode, IntPtr lpSecurityAttributes, FileMode dwCreationDisposition,

uint dwFlagsAndAttributes, IntPtr hTemplateFile);

private void Print()

{

// Command to be sent to the printer

string command = "^XA^FO10,10,^AO,30,20^FDFDTesting^FS^FO10,30^BY3^BCN,100,Y,N,N^FDTesting^FS^XZ";

// Create a buffer with the command

Byte[] buffer = new byte[command.Length];

buffer = System.Text.Encoding.ASCII.GetBytes(command);

// Use the CreateFile external func to connect to the LPT1 port

SafeFileHandle printer = CreateFile("LPT1:", FileAccess.ReadWrite, 0, IntPtr.Zero, FileMode.Open, 0, IntPtr.Zero);

// Aqui verifico se a impressora é válida

if (printer.IsInvalid == true)

{

return;

}

// Open the filestream to the lpt1 port and send the command

FileStream lpt1 = new FileStream(printer, FileAccess.ReadWrite);

lpt1.Write(buffer, 0, buffer.Length);

// Close the FileStream connection

lpt1.Close();

}

以上是 .NET代码将ZPL发送到Zebra打印机 的全部内容, 来源链接: utcz.com/qa/421013.html

回到顶部