- Delphiartiklar, tips, forum, länksamling - 

      

START | DELPHI | LÄNKARGÄSTBOK 




 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: 1368
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; 

 
 
© Copyright 2005 - Staffan Berg
- Alla rättigheter förbehålles -