使用PrintServer和PrintQueue进行网络打印非常慢

时间:2013-01-17 14:12:35

标签: printing network-printers

我正在开发一个ASP.NET应用程序,需要将文档发送到网络打印机。我已经利用PrintServer和PrintQueue来达到如下目的:

using System.Printing;

private void PrintTicket
{
  var server = "Network Server Name";
  var filePath = "File to Print";
  var printer = "Network Printer Name";

  var printerServer = new PrintServer(String.Format(@"\\{0}", server));
  var printQueue = printerServer.GetPrintQueue(printer);

  printQueue.AddJob("New Printing Job", filePath, false);
}

可以找到网络打印机并执行打印作业。

但是,性能非常慢。执行方法printQueue.AddJob()时,需要5-10秒才能开始打印。如果打印机连接到本地计算机,则根本没有性能问题。

有什么建议吗?提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以简单地使用File.Copy(filePath,printerDestination,true),而不是使用PrintQueue类; 我尝试了两种选项,即使用printqueue以及文件复制和文件复制比使用printqueue类要快得多。

谢谢, 阿纳布