Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
592to596
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
592to596
592to596
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Eigenschaften eines Druckers über API anzeigen

Eigenschaften eines Druckers über API anzeigen
06.04.2005 08:24:24
Holger
Hallo,
habe folgendes Problem:
Habe mir eine Userform gemacht in der man einen Drucker auswählt und dieser dann auch als aktiver Drucker gesetzt wird.
Jetzt möchte ich das man noch über einen Commandbutten die Eigenschaften zu dem Drucker verändern kann.
Habe das mit
'Application.Dialogs(xlDialogPrinterSetup).Show' oder auch mit
'Application.Dialogs(xlDialogPrint).Show' gelöst.
Das Problem dabei ist nur, er geht dabei nicht direkt auf die Eigenschaften sondern erst noch jeweils auf eine Druckerauswahl wo man dann auf 'Optionen...' oder 'Eigenschaften' erstmal drücken muss.
Habe auch dann mit Sendkeys das Drücken auch sofort automatisiert. Nur beim zurückgehen geht er natürlich erst wieder auf dei Druckerauswahl.
Kennt hier jemand eine Möglichkeit, wie man direkt die Eigenschaften (Eigenschaftsfenster) eines bestimmten Druckers anpassen kann ohne vorher über die Druckerauswahl zu gehen?
Geht das vielleicht mit API? Wäre über jegliche Hilfe dankbar
MfG
Holger Wächter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eigenschaften eines Druckers über API anzeigen
06.04.2005 10:48:58
Dieter
Hi,
auch mit API müssen die Eigenschaften von Hand eingestellt werden.
mfg Dieter
AW: Eigenschaften eines Druckers über API anzeigen
06.04.2005 11:39:18
Holger
Hallo,
möchte die Eigenschaften ja auch von hand ändern. Mächte nur nicht das vorher noch das Auswahlfenster für die Drucker erscheint sondern dieses übergangen wird. Geht das?
MfG
Holger Wächter
AW: Eigenschaften eines Druckers über API anzeigen
06.04.2005 12:02:58
Dieter
Hi,
dazu brauchst diese API:
Private Declare Function PrinterProperties Lib "winspool.drv" (ByVal hwnd As Long, ByVal hPrinter As Long) As Long
Für Codebeispiel mal googeln.
mdg Dieter
AW: Eigenschaften eines Druckers über API anzeigen
06.04.2005 12:38:32
Holger
Habe folgendes gefunden:
Er sagt nur das die Function nicht deklariert ist. Was ist falsch?
' API-Deklarationen:
Private Const STANDARD_RIGHTS_REQUIRED As Long = &HF0000
Private Const PRINTER_ACCESS_ADMINISTER As Long = &H4&
Private Const PRINTER_ACCESS_USE As Long = &H8&
Private Const PRINTER_ALL_ACCESS As Long = (STANDARD_RIGHTS_REQUIRED Or _
PRINTER_ACCESS_ADMINISTER Or _
PRINTER_ACCESS_USE)
Private Type PRINTER_DEFAULTS
Datatype As Long
pDevMode As Long
pDesiredAccess As Long
End Type
Private Declare Function PrinterProperties _
Lib "winspool.drv" ( _
ByVal hWnd As Long, _
ByVal hPrinter As Long _
) As Long
Private Declare Function OpenPrinter _
Lib "winspool.drv" Alias "OpenPrinterA" ( _
ByVal PrinterName As String, _
ByRef phPrinter As Long, _
ByRef pDefault As PRINTER_DEFAULTS _
) As Long
Private Declare Function ClosePrinter _
Lib "winspool.drv" ( _
ByVal hPrinter As Long _
) As Long

Private Function ShowPrinterProperties(ByRef ModalTo As Form) As Boolean
' Gibt bei erfolgreicher Anzeige des Dialogs True zurück.
Dim RetVal As Long
Dim hPrinter As Long
Dim PD As PRINTER_DEFAULTS
ShowProperties = True
' Vollen Zugriff verlangen
PD.pDesiredAccess = PRINTER_ALL_ACCESS
' Druckerhandle ermitteln
RetVal = OpenPrinter(Printer.DeviceName, hPrinter, PD)
If RetVal = 0 Then ShowProperties = False
' Dialog anzeigen
If ShowProperties = True Then
RetVal = PrinterProperties(ModalTo.hWnd, hPrinter)
If RetVal = 0 Then ShowProperties = False
End If
If ShowProperties = True Then
' Druckerhandle freigeben
RetVal = ClosePrinter(hPrinter)
End If
End Function

Anzeige
AW: Eigenschaften eines Druckers über API anzeigen
06.04.2005 19:12:55
Heiko
Hallo Holger,
ich bins wieder, dieser blöde Dialog hat mich doch nicht losgelassen.
Aber nun habe ich, zumindest hier zuhause auf ME mit EXCEL 2000 das ganze zum laufen gebracht.
Schau mal hier rein, ich glaube das hast du gesucht.
https://www.herber.de/bbs/user/20794.xls
Gruß Heiko
PS: Rückmeldung wäre nett
AW: Eigenschaften eines Druckers über API anzeigen
08.04.2005 12:41:22
Holger
Hallo,
danke viel mals. Habe Deinen Code bei mir eingefügt und es klappt tadellos.
Vielen Dank
Holger Wächter

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige