.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