AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Druckaufträge aus Warteschlange anzeigen
Thema durchsuchen
Ansicht
Themen-Optionen

Druckaufträge aus Warteschlange anzeigen

Ein Thema von Andidreas · begonnen am 8. Apr 2009 · letzter Beitrag vom 21. Apr 2009
Antwort Antwort
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

Druckaufträge aus Warteschlange anzeigen

  Alt 8. Apr 2009, 06:59
aloha zusammen,

kann man mit delphi die druckaufträge die in einer warteschlange zum drucken anstehen (oder in der warteschlange gespeichert sind) anzeigen lasssen? evtl. durch die "printers" unit?
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Exceeder

Registriert seit: 29. Mai 2006
24 Beiträge
 
#2

Re: Druckaufträge aus Warteschlange anzeigen

  Alt 21. Apr 2009, 13:45
Hi,

ja gibt es. Ich denke mit folgendem Sourcecode solltest du weiterkommen:
Delphi-Quellcode:
procedure GetPrintJobs(Jobs: TStringList);
type
  PJobs = ^TJobs;
  TJobs = array[0..0] of TJobInfo2;

var
  Needed, JobCounter: DWORD;
  i: Integer;
  Device, Driver, Port: array[0..255] of char;
  hPrinter, hDeviceMode: THandle;
  Buffer: Pointer;
  Job: PJobs;

const
  NoJobs = 100;

begin
  Jobs.Clear;
  Printer.PrinterIndex := -1;
  Printer.GetPrinter(Device, Driver, Port, hDeviceMode);

  if WinSpool.OpenPrinter(@Device, hPrinter, nil) then
  begin
    EnumJobs(hPrinter, 0, NoJobs, 2, nil, 0, Needed, JobCounter);
    GetMem(Buffer, Needed);

    try
      Job := Buffer;

      if EnumJobs(hPrinter, 0, NoJobs, 2, Buffer, Needed, Needed, JobCounter) then
        for i := 0 to JobCounter - 1 do
          Jobs.Add(Job[i].pDocument);
    finally
      FreeMem(Buffer, Needed);
    end;

    WinSpool.ClosePrinter(hPrinter);
  end;

  Jobs.Sort;
end;
Exceeder
  Mit Zitat antworten Zitat
Flips

Registriert seit: 17. Feb 2005
Ort: Sankt Wendel
491 Beiträge
 
Delphi 7 Professional
 
#3

Re: Druckaufträge aus Warteschlange anzeigen

  Alt 21. Apr 2009, 15:35
Hi,
man muss, damit alles funktioniert, noch die WinSpool Unit einbinden.
Außerdem gibts ne Exception, wenns keinen Standarddrucker gibt.

Lg Flips
Philipp F.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz