// Wenn man eine Druckausgabe nicht zum Drucker schickt, sondern in eine
// Datei umleitet, kann man derartige Dateien
(Spoolfiles) mit dem folgenden
// Code ausdrucken lassen.


// Getestet mit D4 unter XP

uses Printers, winspool; 
 
procedure DruckeDatei(const datei, drucker: string); 
var 
  buf: record 
    info: ADDJOB_INFO_1; 
    pbuf: array[0..max_path - 1] of char; 
  end; 
  dw: cardinal; 
  h: THandle; 
begin 
  dw := 1; 
  OpenPrinter(PChar(drucker), h, nil); 
  AddJob(h, dw, @buf, SizeOf(buf), dw); 
  CopyFile(PChar(datei), buf.info.Path, true); 
  ScheduleJob(h, buf.info.JobID); 
  ClosePrinter(h); 
end; 
 
// Druck auf Standard-Drucker 
 
procedure TForm1.Button5Click(Sender: TObject); 
begin 
  with Printer do 
    DruckeDatei('c:\test.prn', Printers[PrinterIndex]); 
end;



 

Zugriffe seit 6.9.2001 auf Delphi-Ecke