Guten Morgen,
wenn wir bisher etwas mit Delphi drucken wollten, gingen wir immer über die Druckerauswahlbox von Windows:
Delphi-Quellcode:
if Printdialog.execute then begin
...
Printer.Begindoc;
Setmapmode(Printer.Canvas.Handle,MM_LOMETRIC);
ABitmap.drawto(Printer.canvas.handle,0,-ABitmap.height);
ABitmap.free;
Printer.Enddoc;
...
end;
Damit wurde der Drucker automatisch richtig gesetzt und es wurde gedruckt.
Wenn ich jedoch nun, ohne diesen Druckerdialoh, also direkt drucken will, funktioniert das nicht:
Delphi-Quellcode:
//Wenn der Druckername leer ist, wird der Standarddrucker verwendet
if (printerName <> '') then begin
for i:= 0 to Printers.Printer.Printers.Count - 1 do begin
if (printerName = Printers.Printer.Printers[i]) then begin
Printers.Printer.SetPrinter(PAnsiChar(printername),PAnsiChar('WINSPOOL'),PAnsiChar(''),deviceMode);
end;
end;
end;
Wie muß ich die Funktion
procedure SetPrinter(ADevice: PAnsiChar; ADriver: PAnsiChar; APort: PAnsiChar; ADeviceMode: Cardinal);
nutzen, damit ich damit einen Drucker einstellen und dann drucken kann???
Danke,
winx
P.S: Verwende BDS2006