Forum
Grundkurs
»Introduktion
»Snabbguide
»Komponenter
»Händelser
»Strängar
»Räkna med Delphi »Egna
typer
»Selektion
»Iteration
»Menyer
»Funktioner
»Arraystrukturer
Tips & Tricks
»Nya tips
»Blandat
»Databaser
»Filer
»Forms
»Grafik
»Internet
»Komponenter
»Matematik
»Multimedia
»Objekt/ActiveX
»Skrivare
»Strängar
»System
»Mest lästa tips
Artiklar
»Delphi och ADO
»Bygga en DLL
»Skapa en enkel rapport
»Hantera registret
»Enheter, units
»Klassen TCanvas
»Använd LookUp Controls
Nya
tips
Lägg
till tips
Delphilänkar
Gästbok
|
|
Stoppa och ta bort utskriftsjobb
|
Kategori: Skrivare
Inlagt: 2004-04-22
Läst: 1454
Inlagt av: Staffan Berg
|
Beskrivning |
Detta exempel avbryter och raderar alla utskriftsjobb som finns i kön.
|
Kod |
uses winspool, printers; function GetCurrentPrinterHandle: THandle; const Defaults: TPrinterDefaults = (pDatatype: nil; pDevMode: nil; DesiredAccess: PRINTER_ACCESS_USE or PRINTER_ACCESS_ADMINISTER); var Device, Driver, Port: array[0..255] of char; hDeviceMode: THandle; begin Printer.GetPrinter(Device, Driver, Port, hDeviceMode); if not OpenPrinter(@Device, Result, @Defaults) then RaiseLastWin32Error; end; //Kill all pending jobs on the current printer procedure PurgeJobsOnCurrentPrinter; var hPrinter: THandle; begin hPrinter:= GetCurrentPrinterHandle; try if not WinSpool.SetPrinter( hPrinter, 0, nil, PRINTER_CONTROL_PURGE ) then RaiseLastWin32Error; finally ClosePrinter(hPrinter); end; end;
|
|
|