Προς το περιεχόμενο

Πως μπορω να θεσω τον εκτυπωτη χωρις συνδεση με VB6;


geo1st487

Προτεινόμενες αναρτήσεις

Δημοσ.

Πως μπορω να θεσω τον εκτυπωτη με χρήση χωρις συνδεση με VB6; Βρηκα τον παρακατω κωδικα που δεν δουλευει.

 

Private Declare Function SetPrinterApi Lib "winspool.drv" Alias _

"SetPrinterA" (ByVal hPrinter As Long, _

ByVal Level As Long, _

buffer As Long, _

ByVal Command As Long) As Long

 

 

Private Type PRINTER_DEFAULTS

pDatatype As String

pDevMode As Long

DesiredAccess As Long

End Type

 

Private Declare Function OpenPrinter Lib "winspool.drv" _

Alias "OpenPrinterA" (ByVal pPrinterName As String, _

phPrinter As Long, pDefault As PRINTER_DEFAULTS) As Long

 

 

Private Declare Function ClosePrinter Lib "winspool.drv" (ByVal hPrinter As Long) As Long

 

 

Private Enum PrinterAccessRights

PRINTER_ACCESS_ADMINISTER = &H4

PRINTER_ACCESS_USE = &H8

PRINTER_ALL_ACCESS = &HF000C

End Enum

 

 

Private Enum Printer_Status

PRINTER_STATUS_OFFLINE = &H80

PRINTER_STATUS_NOT_AVAILABLE = &H1000

PRINTER_STATUS_IO_ACTIVE = &H100

PRINTER_STATUS_READY = &H0

End Enum

 

 

Private Enum Printer_Control_Commands

PRINTER_CONTROL_PAUSE = 1

PRINTER_CONTROL_RESUME = 2

PRINTER_CONTROL_PURGE = 3

PRINTER_CONTROL_SET_STATUS = 4

End Enum

 

 

Private Sub SetPrinterStatus(ByVal DeviceName As String, ByVal newStatus As Printer_Status)

 

Dim lret As Long

Dim mhPrinter As Long

Dim pDef As PRINTER_DEFAULTS

 

'\\ Open the printer in admin. mode

pDef.DesiredAccess = PRINTER_ALL_ACCESS

lret = OpenPrinter(DeviceName, mhPrinter, pDef)

 

' Set the new status

lret = SetPrinterApi(mhPrinter, newStatus, 0, PRINTER_CONTROL_SET_STATUS)

' Close the printer

Debug.Print Err.LastDllError

lret = ClosePrinter(mhPrinter)

 

End Sub

 

Private Sub Command2_Click()

SetPrinterStatus "Kostas", PRINTER_STATUS_OFFLINE

End Sub

 

---------- Το μήνυμα προστέθηκε στις 10:35 ----------

 

Καμια ιδεα;

 

---------- Το μήνυμα προστέθηκε στις 10:27 ----------

 

Ξέρει κανεις πως μπορω με VB6 να θεσω τον εκτυπωτη σε παυση; Ο λογος που θελω να θεσω τον εκτυπωτη σε εργασια χωρις συνδεση ή σε παυση ειναι για να κραταω εκτυπωσεις στην ουρα οταν ο χρηστης επιλεξει να εκτυπωσει ενα εγγραφο απο notepad, word, excel κλπ.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...