Как можно отлавливать задания на принтер?
Сервер печати
https://habr.com/post/257297/
Самое простое воспользоваться "Системным монитором". Доступно ограниченное количество счетчиков, но ради небольшой статистики может хватить.
Чтобы некоторые счетчики сбрасывались в 0 я перезапускаю очередь печати скриптом:net stop "spooler"
del /S /Q c:\windows\system32\Spool\Printers\*
net start "spooler"
Если нужно через скрипт узнать количество распечатанных страниц, то вот как пример через Powershell:get-counter "\Очередь печати(_total)\Всего напечатано страниц" | Foreach-Object {$_.CounterSamples[0].CookedValue}