You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
2.5 KiB
75 lines
2.5 KiB
|
|
Imports System.Drawing.Printing
|
|
|
|
Public Class clsPrinter
|
|
|
|
Public Printers As New DataTable
|
|
Public Papersources As New DataTable
|
|
|
|
Public Function Get_Printers()
|
|
Printers.Clear()
|
|
Printers.Columns.Clear()
|
|
Printers.Columns.Add("Printername")
|
|
Dim dr1 As DataRow = Printers.NewRow
|
|
dr1.Item(0) = "Standard"
|
|
Printers.Rows.Add(dr1)
|
|
For Each printer As String In PrinterSettings.InstalledPrinters
|
|
Dim dr As DataRow = Printers.NewRow
|
|
dr.Item(0) = printer
|
|
Printers.Rows.Add(dr)
|
|
Next printer
|
|
End Function
|
|
|
|
Public Function Get_Papersources(ByVal Printer As String)
|
|
Papersources.Rows.Clear()
|
|
Papersources.Columns.Clear()
|
|
Papersources.Columns.Add("RawKind")
|
|
Papersources.Columns.Add("Sourcename")
|
|
Dim pkSource As System.Drawing.Printing.PaperSource
|
|
Dim printDoc As New System.Drawing.Printing.PrintDocument
|
|
printDoc.PrinterSettings.PrinterName = Printer
|
|
For Each pkSource In printDoc.PrinterSettings.PaperSources
|
|
Dim dr As DataRow
|
|
dr = Papersources.NewRow
|
|
dr.Item(0) = pkSource.RawKind
|
|
dr.Item(1) = pkSource.SourceName
|
|
Papersources.Rows.Add(dr)
|
|
Next
|
|
End Function
|
|
|
|
Public Function Get_DefaultPrinter() As String
|
|
Dim oPS As New System.Drawing.Printing.PrinterSettings
|
|
Return oPS.PrinterName
|
|
End Function
|
|
|
|
Public Function Set_DefaultPrinter(ByVal Printername As String) As Boolean
|
|
Try
|
|
Dim a As New Printing.PageSettings()
|
|
a.PrinterSettings.PrinterName = Printername
|
|
Shell(String.Format("rundll32 printui.dll,PrintUIEntry /y /n ""{0}""", Printername))
|
|
Catch ex As Exception
|
|
Return False
|
|
End Try
|
|
End Function
|
|
|
|
Public Function Get_Printersettings(ByVal Reportnr As Integer, ByRef printername As String, ByRef Papierschacht As String)
|
|
Dim db As New clsDB
|
|
db.Get_Tabledata("Auswertung", " where auswertungnr=" + Reportnr.ToString)
|
|
Try
|
|
printername = db.dsDaten.Tables(0).Rows(0).Item("Drucker")
|
|
If printername = "Standard" Or printername = "" Then printername = Get_DefaultPrinter()
|
|
Catch
|
|
printername = Get_DefaultPrinter()
|
|
End Try
|
|
|
|
Try
|
|
Papierschacht = db.dsDaten.Tables(0).Rows(0).Item("Papierschacht")
|
|
Catch
|
|
Papierschacht = ""
|
|
End Try
|
|
|
|
End Function
|
|
|
|
|
|
End Class
|