【发布时间】:2015-11-06 13:57:02
【问题描述】:
我在通过 Foxit Reader 打印 PDF 时遇到问题。问题不在于它没有打印,而是在尝试这样做时 GUI 已加载。我想要打印只是在后台发生......
到目前为止,我读到的所有内容都表明下面的代码应该在后台实际打印,但是对于每个打印作业,Foxit GUI 都会弹出... GUI 在打印后也会关闭,但我不想要它首先打开。如果这很重要,我正在从托管 WCF 服务的控制台应用程序执行下面的代码......
ProcessStartInfo psInfo = new ProcessStartInfo();
psInfo.FileName = FoxitReaderLocation;
psInfo.Arguments = String.Format("/t \"{0}\" \"{1}\"",
fileLocation,
printerName);
psInfo.WindowStyle = ProcessWindowStyle.Hidden;
psInfo.CreateNoWindow = true;
psInfo.UseShellExecute = true;
Process process = Process.Start(psInfo);
process.WaitForExit(10000);
if (!process.HasExited)
{
process.Kill();
process.Dispose();
}
使用/p "filelocation" 打印也可以使用默认打印机,但GUI 也会出现同样的问题。
使用 Adobe Reader 执行此操作时会静默发生,但不会打印我的一半文件(但话说回来,Adobe Reader 的命令行界面不受官方支持,因此请不要建议使用 Adobe Reader)
来源:
【问题讨论】:
标签: c# command-line printing process foxit-reader