// 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;
|