![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сколько страниц напечатал принтер [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]Можно...Но достаточно сложно, так что лучше найти готовый модуль. Дело в том, что тебе придется опрашивать принтер каждую секунду, на предмет изменения количества листов, с момента начала печати и до момента ее конца... А потом выбирать наибольшее значение...