Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сколько страниц напечатал принтер [D6, WinXP]


Andry ©   (2004-11-09 12:52:00) 

Можно ли как-то глобально уследить за тем, сколько страниц напечатал принтер... причем печатать могут любые приложения, а программа должна знать сколько всего страниц, например за весь день???


[lamer]Barmaglot   (2004-11-09 14:27:00) [1]

то Andry   (09.11.04 14:04) [3]

Не помню что за модуль, но ф-ция знакомая... hPrinter получается при вызове OpenPrinter. Level указывает какой уровень информации ты хочешь получить (в твоем случае либо пять либо четыре в зависимости от NT или 98),Pjob это указатель на то какую конкретно работу споолера ты хочешь проверить... А в последнем параметре насколько я помню нужды никакой нет... Правда не уверен, лучше чем меня слушать залезь в мануал...


Andry   (2004-11-09 14:04:00) [2]

Хорошо. Есть модуль WinSpool и там функция GetJob(hPrinter: THandle; JobId: DWORD; Level: DWORD; pJob: Pointer; cbBuf: DWORD; pcbNeeded: PDWORD): BOOL; stdcall;
Тока вот не понимаю где взять hPrinter и зачем последний параметр??? (А где можно взять готовые библиотеки)


KilkennyCat   (2004-11-09 13:19:00) [3]

подключиться к спулеру. Но у большинства принтеров есь счетчик и утилита просмотра.


[lamer]Barmaglot   (2004-11-09 13:14:00) [4]

Можно...Но достаточно сложно, так что лучше найти готовый модуль. Дело в том, что тебе придется опрашивать принтер каждую секунду, на предмет изменения количества листов, с момента начала печати и до момента ее конца... А потом выбирать наибольшее значение...


Наверх

Титульная страница Поиск, карта сайта Написать письмо