如何使ghostscript打印pdf到群集故障转移本地队列?

时间:2014-10-31 16:52:21

标签: c# printing ghostscript failovercluster

我有一个应用程序在本地队列中执行打印物理文档。但是,由于此应用程序在群集故障转移环境中运行,因此无法列出或使用故障转移群集环境中的打印队列。 Ghostscript仅列出本地服务器的队列(作为独立安装)。

有没有办法使用群集队列进行打印而不会疯狂地共享(安装)它?

我为此目的使用命令行:

-q -dBATCH -dNOPAUSE -dNODISPLAY   -c  "mark /Duplex true /NoCancel true   /OutputFile (%printer%Ricoh c2051) /UserSettings << /DocumentName  (Test) >> (mswinpr2)finddevice putdeviceprops setdevice"  -f "duplex.pdf"

使用\ server \ printer name不起作用。

1 个答案:

答案 0 :(得分:1)

不,没有办法让Ghostscript打印到本地系统无法使用的打印机。我最近在另一篇文章中解释了这个原因,但在这里又是:

将“输入”(PostScript,PDF,XPS,PCL,PXL)打印到Windows系统上的物理打印机(因此使用mswinpr2设备)时,Ghostscript不需要知道打印机的任何特性。它的作用是从Windows请求所选打印机的打印机特性,然后将输入呈现为所需大小的位图。它创建与打印机兼容的设备上下文,并将位图blits到设备上下文。然后它告诉设备上下文将自己打印到打印机。

通过使用Windows打印子系统,特别是Windows打印机驱动程序,Windows负责将位图转换为适合打印机的所有业务。

这样做的结果是mswinpr2设备只能打印到运行它的Windows系统已知的打印机。如果您无法从Windows列出打印机,则mswinpr2无法打印到它。