0

我正在调用GetPrintQueue("Adobe PDF")我的表单Load事件代码以检查 Adob​​e PDF 驱动程序是否可用。如果我将其更改为不存在的队列名称,为了测试该条件,该语句后面的任何代码都不会执行,它会立即执行表单Activated事件。我打算做一个GetPrintQueues并搜索结果,但我无法解释这种行为。这是一个 Visual Studio 2017 C# Autodesk Inventor 插件。

编辑:

改用这个。

private LocalPrintServer localPrintServer = new LocalPrintServer();
private PrintQueueCollection printQueues;
private PrintQueue pdfPrintQueue;
...
printQueues = localPrintServer.GetPrintQueues();
if (printQueues.Any(n => n.FullName == "Adobe PDF"))
    { pdfPrintQueue = localPrintServer.GetPrintQueue("Adobe PDF"); }
else { pdfPrintQueue = null; }
4

0 回答 0