Mostrar la página de propiedades de una impresora
03.11.2010 19:24
er las propiedades de página de una impresora
Declaramos en un módulo :
Type PRINTER_DEFAULTS
pDatatype As Long
pDevMode As Long
DesiredAccess As Long
End Type
Declare Function PrinterProperties Lib "winspool.drv" (ByVal hwnd As Long, ByVal hPrinter As Long) As Long
Declare Function OpenPrinter Lib "winspool.drv" Alias "OpenPrinterA" (ByVal pPrinterName As String, phPrinter As Long, pDefault As Long) As Long
Declare Function ClosePrinter Lib "winspool.drv" (ByVal hPrinter As Long) As Long
pDatatype As Long
pDevMode As Long
DesiredAccess As Long
End Type
Declare Function PrinterProperties Lib "winspool.drv" (ByVal hwnd As Long, ByVal hPrinter As Long) As Long
Declare Function OpenPrinter Lib "winspool.drv" Alias "OpenPrinterA" (ByVal pPrinterName As String, phPrinter As Long, pDefault As Long) As Long
Declare Function ClosePrinter Lib "winspool.drv" (ByVal hPrinter As Long) As Long
Y para acceder, por ejemplo, a la página de propiedades de la impresora por defecto :
Dim l As Long, hPrinter As Long
'abrimos la impresora por defecto para obtener un handle
l = OpenPrinter(Printer.DeviceName, hPrinter, 0&)
'sacamos la página de propiedades
l = PrinterProperties(Me.hwnd, hPrinter)
'cerramos la impresora
l = ClosePrinter(hPrinter)
'abrimos la impresora por defecto para obtener un handle
l = OpenPrinter(Printer.DeviceName, hPrinter, 0&)
'sacamos la página de propiedades
l = PrinterProperties(Me.hwnd, hPrinter)
'cerramos la impresora
l = ClosePrinter(hPrinter)