Home » Tipps & Tricks » Drucker » Druckereigenschaften » Standarddrucker setzen
Standarddrucker setzen
Mit Hilfe dieser Funktion/Procedure kannst Du den Standarddrucker im System festlegen:
Diese Procedure setzt den Standarddrucker. Als Parameter muss die Bezeichnung des Druckers übergeben werden:
procedure SetDefaultPrinter(NewDefPrinter : string); var ResStr : array[0..255] of char; begin StrPCopy(ResStr,NewdefPrinter); WriteProfileString ('windows', 'device', ResStr); StrCopy (ResStr, 'windows'); SendMessage (HWND_BROADCAST, WM_WININICHANGE, 0, LongInt(@ResStr)); end;
Die Bezeichnungen lassen sich mit dieser Funktion ermitteln:
function GetPrinterStrFromIndex(index : integer) : string; var pri : integer; hDeviceMode : THandle; Device,Driver,Port : array[0..255] of char; s,ResStr : array[0..255] of char; begin pri:=Printer.PrinterIndex; Printer.PrinterIndex:=index; Printer.GetPrinter(Device,Driver,Port,hDeviceMode); // Arbeitet nicht richtig, deswegen korrekten String aus WIN.INI abfragen GetProfileString('Devices',Device,'',ResStr,255); StrCopy (s, Device); StrCat (s, ','); StrCat (s, ResStr); Result:=string(s); Printer.PrinterIndex:=pri; end;
Es muss zusätzlich noch die Unit Printers eingefügt werden.