![]() |
Standarddrucker setzen
Da ich die Funktion überarbeitet habe und die noch gar nicht in der CL existiert, hier mal eine funktionierende Variante den Standarddrucker einzustellen. Übergeben wird der Druckername als String (Unit Printers; Printer.Printers hat eine Liste aller installierten), die Funktion liefert True zurück, wenn der erfolgreich Drucker geändert wurde, ansonsten False.
Delphi-Quellcode:
...:cat:...
uses
WinSpool; function SetDefaultPrinter(aPrinterName: string): Boolean; type TSetDefaultPrinterA = function (prnName: LPCTSTR): BOOL; stdcall; var WS: HINST; SetDefaultPrinterA: TSetDefaultPrinterA; begin WS := GetModuleHandle(PChar(winspl)); SetDefaultPrinterA := GetProcAddress(WS, 'SetDefaultPrinterA'); if Assigned(SetDefaultPrinterA) then begin Result := SetDefaultPrinterA(PChar(aPrinterName)); if Result then SendNotifyMessage(HWND_BROADCAST, WM_SETTINGCHANGE, 0, 0); end else begin Result := False; end; end; [edit=CalganX]Win32-Klassifizierung hinzugefügt. Mfg, CalganX[/edit] [edit=fkerber]kleinen Schreibfehler im Code verbessert. Mfg, fkerber[/edit] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz