GetPrintQueue вызывает неполное выполнение загрузки формы - PullRequest
0 голосов
/ 03 января 2019

Я звоню GetPrintQueue("Adobe PDF") в форме Load код события, чтобы проверить, доступен ли драйвер Adobe 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; }
...