System.Printing для возврата состояния очереди печати - свойства никогда не возвращают true

Я использую System.Printing для опроса статуса PrintQueue - моей целью является получение обновлений статуса и ошибок, в частности, логических значений IsOutOfMemory, NeedUserIntervention, IsOutOfPaper, HasPaperProblem, IsPaperJammed, IsInError, IsPaused, IsBusy, IsPrinting, IsPorit, IsPropening, IsPropening, IsProcessinging и т.д. Проблема в том, что свойства никогда не возвращают true, даже если я знаю, что одно из них true. Кто-нибудь имел успех с этими свойствами? Кто-нибудь понял, что здесь может быть не так?

Спасибо Джеймс

2 ответа

Решение

Ну, я думаю, ты должен позвонить PrintQueue.Refresh метод для обновления свойств.

Хотя на этот вопрос уже дан ответ, другая проблема может заключаться в том, что принтер не поддерживает упомянутые сигналы. Согласно MSDN, эти сигналы по умолчанию установлены на false.

Нужно следить за HasToner флаг, который нельзя использовать для поиска проблемы в случаях, когда вы не уверены, поддерживает ли принтер этот сигнал (поскольку по умолчанию он имеет значение false, поэтому вы не можете определить, нет ли тонера или нет признаков его существования).

Другие вопросы по тегам