Вниз
Скачать: CL | DM;

Ловушка на принтер...   Найти похожие ветки 

 
Sirus ©   (2003-04-04 06:56) [0]

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


 
_ALEXey_ ©   (2003-04-09 17:45) [1]

Такая же проблема!

Я нашел в хэлпе по SDK сообщение WM_SPOOLERSTATUS. Отлавливаю это сообщение в своей проге, а оно как-то плохо отлавливаетя :-(

Попробуй поискать в этом направлении.



 
_ALEXey_ ©   (2003-04-19 07:47) [2]

Почему-то этот код под W2K не работает.

..........
private
procedure WMSPOOLERSTATUS(var Msg: TWMSPOOLERSTATUS); message WM_SPOOLERSTATUS;
..........
procedure TForm1.WMSPOOLERSTATUS(var Msg: TWMSPOOLERSTATUS);
begin
Label1.Caption:= IntToStr(msg.JobsLeft);
Msg.Result:= 0;
end;


Пробовал FindFirstChangePrinterNotification. Тоже не работает.


 
gurban   (2003-04-19 10:32) [3]

Ставь на компьютер на котором стоит принтер W2K или XP, и программу O&K Print Watch.
Если хочешь сам писать программу на Win98 WM_SPOOLERSTATUS работает очень криво. При получении задания с другого компьютера вообще не хочет отрабатываться.
На W2K WM_SPOOLERSTATUS вообще не используется. Работает FindFirstChangePrinterNotification, но должна быть включена запись событий из спуллера с данными о задании. Где включается не помню, думаю можно в интернете найти.


 
Reals ©   (2003-04-19 18:09) [4]

Вот ссылка на программу, где организован достаточно полный пример перехвата принтера: http://www.varscomteh.com/downloads/PrintJob.rar

P.S. Эта программа ведет полную статистику, что/где/когда/сколько печатали на принтере.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.015 c
4-84836
Akvilon
2003-04-24 11:45
2003.06.26
уникальность окна, в чем?


1-84378
VISA
2003-06-09 11:54
2003.06.26
Событие при перемещении формы


1-84086
Михайлов Антон
2003-06-07 02:30
2003.06.26
Уникальное имя


3-83888
XConeo
2003-05-28 01:35
2003.06.26
Люди кто работал с ADO то милости прошу


14-84733
Soft
2003-06-04 11:27
2003.06.26
О




   Наверх