我創建了Print spooler應用程序以異步打印pdf。Process WaitForExit不在等待
(應用程序使用veryPDF命令從網絡打印機打印)
這裏是代碼
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
但它並沒有在WaitForExit代碼等等。它執行(在這裏//某些東西),即使我的文檔在打印機隊列中。
是否有任何其他方式通知打印完成後?
也知道,如果你嘗試手動打開控制檯,並執行你的命令,如果控制檯立即給你回一個提示,即使你執行的程序繼續運行,那麼你的WaitForExit代碼將只能等待'cmd'進程(控制檯)退出,而不是其他程序。 –
此外,你不是逃避反斜槓,所以:'「E:\ P ...'應該是'@」E:\ P ...'。 –
感謝您的回覆@ LasseV.Karlsen。但是我沒有收到任何錯誤,打印過程沒有任何錯誤。 – Munavvar