- 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 alla utskriftsjobb Kategori: Skrivare
Inlagt: 2004-03-11
Läst: 1386
Inlagt av: Staffan Berg
Beskrivning
Denna kod stoppar och raderar samtliga utskriftsjobb som ditt program genererat. 
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; 
 
 
//Döda alla utskriftsjobb 
 
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 -