Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС
выпущен 4 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

БОЛЬШОЙ FAQ ПО DELPHI



Печать через спулер на матричный принтер

Автор: Оргиш Александр

Печатаю через спулер на матричный принтер текст таким образом :


 var
   pcbNeeded: DWORD;
   FDevice: PChar;
   FPort: PChar;
   FDriver: PChar;
   FPrinterHandle: THandle;
   FDeviceMode: THandle;
   FJob: PADDJOBINFO1;
   Stream: TFileStream;
 begin
   GetMem(FDevice, 128);
   GetMem(FDriver, 128);
   GetMem(FPort, 128);
   Printer.GetPrinter(FDevice, FDriver, FPort, FDeviceMode);
   if FDeviceMode = 0 then
     Printer.GetPrinter(FDevice, FDriver, FPort, FDeviceMode);
   if OpenPrinter(FDevice, FPrinterHandle, nil) then
   begin
     GetMem(FJob, 1024);
     //Добавляем задание, получаем имя файла в директории windows\spoool\
     AddJob(FPrinterHandle, 1, FJob, 1024, pcbNeeded);
     Stream := TFileStream.Create(FJob.Path, fmCreate);
     // Дальше пишем текст (+ESC команды!!!!) прямо в Stream
     // и не забываем переводить в DOS - кодировку
     .........
     Stream.Free;
     //Постановка задания в очередь - только теперь принтер начинает печатать
     ScheduleJob(FPrinterHandle, FJob.JobID);
     FreeMem(FJob);
     ClosePrinter(FPrinterHandle);
   end;
   FreeMem(FDevice, 128);
   FreeMem(FDriver, 128);
   FreeMem(FPort, 128);
 end;
 




<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS