Прочитайте пул принтеров, чтобы узнать количество печатаемых страниц. - PullRequest
3 голосов
/ 12 августа 2010

У меня в классе есть сетевой принтер. Я хотел бы вести учет того, сколько страниц напечатал каждый студент. Я хочу знать, как я могу читать пул принтеров, чтобы получить количество страниц, когда студент печатает. Вот что я имею в виду: написать сервис Windows для получения:

  1. Пользователь вошел в систему имя
  2. Количество напечатанных документов каждый раз при печати документов
  3. Отправить имя пользователя + количество страниц в удаленную базу данных

Чего я не знаю:

  1. как получать количество страниц при каждой печати

Если возможно, я бы хотел, чтобы это было сделано в VB.NET.

Спасибо.

1 Ответ

2 голосов
/ 13 августа 2010

Вы можете использовать класс WMI Win32_PrintJob , чтобы получить информацию о каждой работе. У него есть свойства PagesPrinted и TotalPages, которые, надеюсь, дадут вам то, что вам нужно. Он также имеет другие свойства, такие как Status, которые также могут иметь значение (если вы не хотите считать страницы в удаленных или неудачных заданиях или аналогичных).

Эта статья содержит информацию о вызове этого класса из VB.Net:
. Опрос ваших запросов принтера с WMI

Просто не забудьте добавить ссылку на System.Management, поскольку она не добавлена ​​по умолчанию в новый проект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...