Setdefaultprinter() und getdefaultprinter()

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
shim
Beiträge: 65
Registriert: 12.09.2004 23:09

Setdefaultprinter() und getdefaultprinter()

Beitrag 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
Benutzeravatar
AndyX
Beiträge: 1272
Registriert: 17.12.2004 20:10
Wohnort: Niederösterreich
Kontaktdaten:

Beitrag von AndyX »

He der Code ist gut! Kann ich vllt mal brauchen! :allright: :D

Mfg,
AndyX
Antworten