Получить общее количество страниц от Win32_PrintJob - PullRequest
2 голосов
/ 31 августа 2011

WMI-класс Win32_PrintJob имеет множество свойств.(см .: Win32_PrintJob на MSDN )

У меня есть небольшое приложение .NET, которое опрашивает задания на печать и отображает информацию о заданиях.количество отправленных страниц.Но эта цифра НЕ учитывает количество копий, запрошенных пользователем.Так, если пользователь хочет напечатать 5 копий двухстраничного документа, значение TotalPages будет равно 2, а не 10.

Как я могу получить количество копий для задания на печать или получитьобщее количество страниц для печати (количество копий умноженное на количество страниц в задании)?

Спасибо

1 Ответ

2 голосов
/ 06 сентября 2011

У меня была такая же проблема с Win32_PrintJob (TotalPages / PagesPrinted не учитывает количество копий). Я решил это, объединив WMI с Win api.

Количество копий можно получить из структуры DEVMODE (dmCopies), которая является частью структуры JOB_INFO_2 .

Итак, вы вызываете GetJob с уровнем = 2 и получаете экземпляр JOB_INFO_2. Оттуда это кусок пирога, просто немного маршалинга:).

Надеюсь, это поможет.

Приветствия

Lukas

...