Die 2 folgende Variante welche man häufig im Internet findet, bringt bei mir unter Windows 10 & 11 den Fehler 'Systemfehler. Code: 1801.
Der Druckername ist unzulässig'
Delphi-Quellcode:
procedure SetWinDefaultPrinter(const Name: String);
var
fnSetDefaultPrinter: function(pszPrinter: PChar): Bool; stdcall;
H: THandle;
Size, Dummy: Cardinal;
PrinterInfo: PPrinterInfo2;
begin
if (Win32Platform = VER_PLATFORM_WIN32_NT) and (Win32MajorVersion >= 5) then begin
@fnSetDefaultPrinter := GetProcAddress(GetModuleHandle(winspl), 'SetDefaultPrinterA');
Hat jemand einen Tipp für mich?
Hast Du das mal mit SetDefaultPrinterW versucht? Schließlich ist pChar schon seit D2006 PWidechar...