IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API, COM et SDKs Delphi Discussion :

Imprimante / Compteur


Sujet :

API, COM et SDKs Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    tintin22
    Invité(e)
    Par défaut Imprimante / Compteur
    Salut à tous,

    Est-il possible d'avoir les informations contenues dans la file d'attente de l'imprimante? (Nom du document, Pages,...), je voudrais en fait compter le nombre de pages imprimées?

    Merci d'avance.

  2. #2
    Membre Expert
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 704
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 704
    Par défaut
    J'ai trouvé ce bout de code, y a pas longtemps :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    Type 
      TJobs = array [0..1000] of JOB_INFO_2; 
      PJobs = ^TJobs; 
     
    Var 
      BytesNeeded, NumJobs, i : Cardinal; 
      pJ : PJobs; 
    begin 
     
                // Recherche des Jobs 
     
                EnumJobs(HandleImprimante,0,1000,2,nil,0, BytesNeeded,NumJobs); 
                pJ := AllocMem(BytesNeeded); 
                EnumJobs(HandleImprimante,0,1000,2,pJ,BytesNeeded, BytesNeeded,NumJobs); 
     
                if NumJobs = 0 then 
                  ListeAjouts.Add('.....Pas de jobs en attente') 
                else 
                  for i := 0 to Pred(Numjobs) do begin 
                    If (Pj[i].Status And JOB_STATUS_SPOOLING) = 0 then begin 
                      ListeAjouts.Add('.....Job ' + IntToStr(pJ[i].JobId) + SavePchar(pJ[i].pDocument)); 
                      IdFic:=IntToStr(pj[i].JobId); 
                      if ListeJobs.IndexOf(IdFic) = -1 then begin 
                        inc(NbJobs); 
                        Synchronize(MiseAJourCompteur); 
                      end; 
                    end; 
                  end;
    Ca peut peut-être t'aider ...
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. :bug: ___ "http://club.developpez.com/regles/#LIII-A"Écrivez dans un français correct !!

    C++Builder 5 - Delphi 6#2 Entreprise - Delphi 2007 Entreprise - Delphi 2010 Architecte - Delphi XE Entreprise - Delphi XE7 Entreprise - Delphi 10 Entreprise - Delphi 10.4.2 Entreprise - Delphi 11.3 Entreprise - Visual studio 2022
    OpenGL 2.1 - Oracle 10g - Paradox - Interbase (XE) - PostgreSQL (15.7)

  3. #3
    tintin22
    Invité(e)
    Par défaut
    Merci Lung. L'information qui m'interesse est située dans le champ 'TotalPages' de pJ qui est de type Record.
    Pour le moment j'ai un nombre erroné du genre 13577880 pages alors qu'en réalité je n'ai que 5 pages.

Discussions similaires

  1. [PowerShell] Compteurs imprimantes Réseaux / USB
    Par MaAamie dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 17/03/2015, 10h07
  2. Compteur d'impression imprimante/photocopieur
    Par Mustaal dans le forum Langage
    Réponses: 3
    Dernier message: 06/01/2014, 15h03
  3. Compteur d'impression d'une imprimante
    Par nego74 dans le forum VB.NET
    Réponses: 1
    Dernier message: 21/09/2012, 13h41
  4. Récupérer compteurs imprimantes
    Par Avatar dans le forum Windows
    Réponses: 0
    Dernier message: 26/04/2010, 09h04
  5. compteur de pages imprimante
    Par mahboub dans le forum Périphériques
    Réponses: 1
    Dernier message: 30/10/2005, 23h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo