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 :

Détection papier niveau bas


Sujet :

API, COM et SDKs Delphi

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 65
    Points : 51
    Points
    51
    Par défaut Détection papier niveau bas
    Bonjour le forum

    Je sollicite votre aide et votre bienveillance pour un problème pour lequel je n'arrive pas à trouver de solution !

    Dans le cadre d'un programme de borne de commande client, j'imprime des tickets (caisse et carte bleue). Techniquement, l'imprimante permet de détecter le niveau bas de papier (papier en rouleau).

    Est-ce que quelqu'un sait comment récupérer cette information ? Peut-être via une API Windows ?

    Merci d'avance de votre aide.

    Bonne journée

    FM

  2. #2
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 729
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 729
    Points : 15 133
    Points
    15 133
    Par défaut
    Citation Envoyé par Mirande Voir le message
    Je sollicite votre aide et votre bienveillance pour un problème pour lequel je n'arrive pas à trouver de solution !
    Curieux : j'ai tapé delphi detect paper out dans un moteur de recherche et j'ai eu environ 350 000 retours...
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  3. #3
    Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 65
    Points : 51
    Points
    51
    Par défaut
    352 000 réponses mais juste pour l'exemple, sur la première page :

    Delphi Complete Works of Jonathan Swift (Illustrated)
    https://books.google.fr/books?isbn=1909496367 - Traduire cette page
    Jonathan Swift - 2013 - ‎Fiction
    He waited most anxiously for the servant to bring the paper; but to his surprise and indignation, an hour elapsed, and the man did not present it. The dean again looked out. The day was cold and wet, and the wretched petitioner still retained her situation, with many an eloquent and anxious look at the house. The benevolent ..

    Cela ne m'aide pas vraiment. En tout cas, pas pour résoudre mon problème de détection de papier !

    Donc, pour être plus sérieux. J'ai bien entendu fait le tour d'un certain nombre de choses sur google. Je cherche à savoir s'il y a moyen de capter l'information de "presque fin de rouleau", symbolisé par les bandes rouges. Je n'ai pas encore l'imprimante en main mais d'après la description technique, elle détecte cette information.

    Je ne suis pas sûr, je le testerai dès que possible, que l'information soit la même que lorsqu'il n'y a plus de papier. L'imprimante étant toujours fonctionnelle pour l'impression.

  4. #4
    Expert éminent sénior
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    10 729
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 10 729
    Points : 15 133
    Points
    15 133
    Par défaut
    Citation Envoyé par Mirande Voir le message
    Donc, pour être plus sérieux. J'ai bien entendu fait le tour d'un certain nombre de choses sur google. Je cherche à savoir s'il y a moyen de capter l'information de "presque fin de rouleau", symbolisé par les bandes rouges. Je n'ai pas encore l'imprimante en main mais d'après la description technique, elle détecte cette information.

    Je ne suis pas sûr, je le testerai dès que possible, que l'information soit la même que lorsqu'il n'y a plus de papier. L'imprimante étant toujours fonctionnelle pour l'impression.
    Désolé, je n'avais pas fait la différence entre "paper out" et "paper low".

    Si l'imprimante détecte ces bandes rouges, ça devrait "remonter" à travers le pilote.
    Lire attentivement la doc, et éventuellement poser la question au constructeur, c'est peut-être propriétaire, cette option "paper low". Et c'est vrai qu'elle remonte beaucoup moins à la recherche ggl.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  5. #5
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 664
    Détails du profil
    Informations personnelles :
    Âge : 43
    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 664
    Points : 6 967
    Points
    6 967
    Par défaut
    Citation Envoyé par Mirande Voir le message
    Dans le cadre d'un programme de borne de commande client, j'imprime des tickets (caisse et carte bleue).
    Tu utilises quoi pour imprimer ?
    Directement des API windows, ou une surcouche genre OPOS ?
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ___ É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.3.2 Entreprise - Delphi 10.4.2 Entreprise - Delphi 11.1 Entreprise
    OpenGL 2.1 - Oracle 10g - Paradox - Interbase (XE) - PostgreSQL (15.4)

  6. #6
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 419
    Points : 5 818
    Points
    5 818
    Par défaut
    salut

    sous Windows utilise le WMI

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
         user, Password : String;
         user := '';
         Password := '';
         FSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator');
        FWMIService   := FSWbemLocator.ConnectServer('localhost', 'root\CIMV2', user, Password);
        FWbemObjectSet:= FWMIService.ExecQuery(Format('SELECT * FROM Win32_Printer WHERE Name = "%s"',[NomImprimante]),'WQL',0);
    recherche la propriété DetectedErrorState
    selon la valeur retourné tu as differentes erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ( 'Unknown', 'Other', 'No Error', 'Low Paper', 'No Paper', 'Low Toner', 'No Toner', 'Door Open', 'Jammed', 'Offline', 'Service Requested', 'Output Bin Full' );
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

Discussions similaires

  1. formatage bas niveau
    Par hiko-seijuro dans le forum Composants
    Réponses: 5
    Dernier message: 03/06/2005, 19h38
  2. Détection niveau antialisaing max..ne marche pas
    Par Neilos dans le forum DirectX
    Réponses: 7
    Dernier message: 13/05/2005, 22h45
  3. Formatage bas niveau
    Par wareq dans le forum Composants
    Réponses: 5
    Dernier message: 09/05/2005, 16h00
  4. formatage de bas niveau ??
    Par vbcasimir dans le forum Windows XP
    Réponses: 11
    Dernier message: 06/05/2005, 18h45
  5. Programmation bas niveau de la carte vidéo !!
    Par Invité dans le forum Assembleur
    Réponses: 3
    Dernier message: 03/03/2005, 11h05

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