Der nachfolgende Tipp zeigt, wie man alle Dokumente eines bestimmten Druckers aus der Drucker-Warteschlange löschen kann. ' zunächst die benötigten API-Deklarationen Private Declare Function SetPrinter Lib "winspool.drv" _ Alias "SetPrinterA" ( _ ByVal hPrinter As Long, _ ByVal Level As Long, _ pPrinter As Any, _ ByVal Command As Long) As Long Private Declare Function OpenPrinter Lib "winspool.drv" _ Alias "OpenPrinterA" ( _ ByVal pPrinterName As String, _ phPrinter As Long, _ pDefault As Any) As Long Private Declare Function ClosePrinter Lib "winspool.drv" ( _ ByVal hPrinter As Long) As Long Private Const PRINTER_CONTROL_PURGE = 3 Private Type PRINTER_DEFAULTS pDatatype As String pDevMode As Long DesiredAccess As Long End Type Private Const STANDARD_RIGHTS_REQUIRED = &HF0000 Private Const PRINTER_ATTRIBUTE_DEFAULT = &H4 Private Const PRINTER_ACCESS_ADMINISTER = &H4 Private Const PRINTER_ACCESS_USE = &H8 Private Const PRINTER_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or _ PRINTER_ACCESS_ADMINISTER Or PRINTER_ACCESS_USE) ' Druckaufträge eines bestimmen Druckers löschen Public Sub DeleteDocsFromPrinterQueue(Optional _ ByVal prnName As String) Dim Result As Long Dim hPrinter As Variant Dim udtPrinter As PRINTER_DEFAULTS If IsMissing(prnName) Or prnName = "" Then _ prnName = Printer.DeviceName udtPrinter.DesiredAccess = PRINTER_ALL_ACCESS Result = OpenPrinter(prnName, hPrinter, udtPrinter) If hPrinter <> 0 Then Result = SetPrinter(hPrinter, 0, vbNull, _ PRINTER_CONTROL_PURGE) If Result = 0 Then RaiseLastWin32Error End If Result = ClosePrinter(hPrinter) End Sub Anmerkung: Dieser Tipp wurde bereits 24.631 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 ![]() ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats sevZIP40 Pro DLL ![]() Zippen und Unzippen wie die Profis! Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |