Seite 1 von 1

Setdefaultprinter() und getdefaultprinter()

Verfasst: 23.04.2005 11:43
von shim
Hallo!

Seit vielen Wochen bin ich auf der Suche nach einem Code nach den beiden Funktionen. Leider bislang ohne Erfolg.

Dann passierte es dennoch... Durch einen Abstecher nach C++ (nicht von mir, danke STI!! :D ) hat er diesen Code zusammengebastelt... und es funktioniert:

Code: Alles auswählen

; Code: www.tollsoft.de

Procedure.s getdefaultprinter()
   If OpenLibrary(1,"winspool.drv")
      printer_n$=Space(255)
      printbuff=255
      res=CallFunction(1,"GetDefaultPrinterA",@printer_n$,@printbuff)
      CloseLibrary(1)
    EndIf
   ProcedureReturn printer_n$
EndProcedure

Procedure setdefaultprinter(ausgabegeraet$)
    If OpenLibrary(1,"winspool.drv")
      res=CallFunction(1,"SetDefaultPrinterA",@ausgabegeraet$)
      CloseLibrary(1)
    EndIf
    If res
        ProcedureReturn "OK"
    Else
        ProcedureReturn "NOK"
    EndIf
EndProcedure
    
MessageRequester("Aktueller Standard-Drucker",getdefaultprinter())
setdefaultprinter("Ein Drucker aus den Systemeinstellungen")
MessageRequester("Aktueller Standard-Drucker",getdefaultprinter())
Getestet unter W2K und XP.

Der Code wäre bestimmt auch etwas für das Code-Archiv.
Im Code-Archiv ist ebenfalls eine kleine "win.ini"-basierte Methode um den Standard-Drucker zu setzen/auszulesen...

Bis dahin,

Lars

Verfasst: 23.04.2005 19:24
von AndyX
He der Code ist gut! Kann ich vllt mal brauchen! :allright: :D

Mfg,
AndyX