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

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

перехват данных, посылаемых на печать другой программой... [D7, WinXP]


Nat ©   (2007-01-25 17:58:00) 

Может подскажет кто... пишу прогу по перехвату отправления чужими программами отправки на печать документов... но не знаю как перехватить количество копий отправленных на печать документов и размеры документа, отправленного на печать...
Остальное уже умею, использую JOB_INFO_1_ARRAY
Буду очень благодарен...
Для WinXP


TRUNK   (2007-01-26 12:32:00) [1]

Может этот код поможет:

var
 PrinterHandle: THandle;
 DeviceName: PChar;
 Buf: Pointer;
 BufSize: Integer;
 Orientation: SmallInt;
 PaperSize: SmallInt;
 Copies: SmallInt;
 PrintQuality: SmallInt;

procedure GetParams;
begin
BufSize := DocumentProperties(0,PrinterHandle,DeviceName,nil,nil,0);
Buf := nil;
ReallocMem(Buf,BufSize);
DocumentProperties(0,PrinterHandle,DeviceName,Buf,nil,DM_OUT_BUFFER);
Orientation := PDeviceMode(Buf)^.dmOrientation;
PaperSize := PDeviceMode(Buf)^.dmPaperSize;
Copies := PDeviceMode(Buf)^.dmCopies;
PrintQuality := PDeviceMode(Buf)^.dmPrintQuality;
ReallocMem(Buf,0);
end;


Наверх

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