Mun*_*var 2 .net c# printing process processstartinfo
我创建了Print spooler应用程序来异步打印pdf.
(应用程序使用veryPDF命令从网络打印机打印)
这是Code
var procStartInfo = new System.Diagnostics.ProcessStartInfo("cmd", " /c" + "E:\pdfprint_cmd\pdfprint.exe -$ 388444444448350FA394 E:\PrintSpoolerApplication\PrintSpoolerApplication\bin\Debug\45940.pdf");
procStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
procStartInfo.Verb = "runas";
procStartInfo.UseShellExecute = false;
procStartInfo.CreateNoWindow = true;
var proc = new System.Diagnostics.Process();
proc.StartInfo = procStartInfo;
proc.Start();
proc.WaitForExit();
// Some stuff
Run Code Online (Sandbox Code Playgroud)
但它没有等待WaitForExit代码.即使我的文档在打印机队列中,它也执行了(这里//某些东西).
打印完成后是否还有其他通知方式?
您的代码等待cmd.exe
完成,它(可能)在pdfprint.exe
作为子进程启动后立即终止.我建议你
pdfprint.exe
直接启动(为什么还要在这里使用Windows命令行?)但是,这两种方法仅在pdfprint.exe
实际等待计划的打印作业完成时才起作用.我不知道这个工具,所以我不知道它是否表现得那么好.如果没有,则必须访问打印队列,不建议(正如Hans在其评论中指出的那样).