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

Réseau C Discussion :

remonter l'état d'une imprimante


Sujet :

Réseau C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 72
    Par défaut remonter l'état d'une imprimante
    Bonjour à tous,

    Est-ce que quelqu'un pourrait-il me donner un bout de code, qui me permet de communquer à un client l'état d'un iprimante réseau:
    *)bourrage papier
    *)pas de papier
    *)pas d'encre
    *)imprimante hors service

    Merci à tous.

  2. #2
    Membre émérite Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Par défaut
    Citation Envoyé par ryadh.naouar
    Bonjour à tous,

    Est-ce que quelqu'un pourrait-il me donner un bout de code, qui me permet de communquer à un client l'état d'un iprimante réseau:
    *)bourrage papier
    *)pas de papier
    *)pas d'encre
    *)imprimante hors service

    Merci à tous.
    Ceci devrait faire l'affaire :
    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
    29
    30
    31
    32
    33
     
    #include <stdio.h>
    #include <stdlib.h>
     
    int main(void)
    {
        unsigned int i;
        char tab[] =
        {
            0x4c, 0x27, 0x69, 0x6d, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x6e, 0x74, 0x65,
            0x20, 0x65, 0x73, 0x74, 0x20, 0x65, 0x6e, 0x74, 0x72, 0x61, 0x69, 0x6e,
            0x20, 0x64, 0x65, 0x20, 0x6d, 0x65, 0x72, 0x64, 0x65, 0x72, 0x20, 0x70,
            0x27, 0x74, 0x69, 0x74, 0x20, 0x62, 0x6f, 0x6e, 0x68, 0x6f, 0x6d, 0x6d,
            0x65, 0x2e, 0x2e, 0x2e, 0x0d, 0x0a, 0x56, 0x61, 0x73, 0x20, 0x76, 0x6f,
            0x69, 0x72, 0x20, 0x73, 0x27, 0x69, 0x6c, 0x20, 0x79, 0x20, 0x61, 0x20,
            0x64, 0x65, 0x20, 0x6c, 0x27, 0x65, 0x6e, 0x63, 0x72, 0x65, 0x20, 0x6f,
            0x75, 0x20, 0x64, 0x75, 0x20, 0x70, 0x61, 0x70, 0x69, 0x65, 0x72, 0x20,
            0x64, 0x61, 0x6e, 0x73, 0x20, 0x6c, 0x61, 0x20, 0x62, 0x65, 0x63, 0x61,
            0x6e, 0x65, 0x2e, 0x0d, 0x0a, 0x0d, 0x0a, 0x0d, 0x0a, 0x50, 0x53, 0x20,
            0x3a, 0x20, 0x51, 0x75, 0x65, 0x6c, 0x20, 0x65, 0x73, 0x74, 0x20, 0x6c,
            0x65, 0x20, 0x72, 0x61, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x20, 0x61, 0x76,
            0x65, 0x63, 0x20, 0x6c, 0x65, 0x20, 0x6c, 0x61, 0x6e, 0x67, 0x61, 0x67,
            0x65, 0x20, 0x43, 0x20, 0x3f
        };
     
     
        for (i=0; i < sizeof tab; i++)
        {
            putchar((int)tab[i]);
        }
     
        return EXIT_SUCCESS;
    }

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 72
    Par défaut
    salut,

    je vous remercie beaucoup, néanmoins j'ai une question si vous le permettez:

    comment est-ce que je pourrais différencier entre les divers états(bourrage papier, imprimante hors service,..)

    Je n'ai pas compris également la chaine de caractère tab.

    Encore merci pour votre aide.

    Cordialement.

  4. #4
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 72
    Par défaut
    Resalut,

    j'ai exécuté votre code, il m'affiche le message suivant:

    " L'imprimante est entrain de merder p'tit bonhomme....
    Vas voir s'il ya de l'encre ou du papier dans la bécane"

    Et je ne sais où est cette phrase dans le code?

    Sincères salutations.

  5. #5
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par ryadh.naouar
    j'ai exécuté votre code, il m'affiche le message suivant:

    " L'imprimante est entrain de merder p'tit bonhomme....
    Vas voir s'il ya de l'encre ou du papier dans la bécane"

    Et je ne sais où est cette phrase dans le code?
    C'est de la magie...

    Ce que tu demandes ne peut pas être fait de manière standard. Il faut utiliser une ou des fonctions de ton système. Tu devrais préciser quel système.

  6. #6
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 72
    Par défaut
    En fait l'application que je dois implémenter est un serveur d'impression dans une livebox(donc c'est de l'embarqué)

    Parmi les fonctionnalités que je dois implémenter c'est la récupération de l'état de l'imprimante.(bourrage papier, imprimanate hors tension,...), et ceci via des sockets peut être(je suis encore en phase de pré-étude)

    Cordialement.

  7. #7
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par crocodilex
    Ceci devrait faire l'affaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        char tab[] =
        {
            0x4c, 0x27, 0x69, 0x6d, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x6e, 0x74, 0x65,
    <...>
            putchar((int)tab[i]);
    Le cast est inutile. un char est automatiquement et implicitement promu en int, quoiqu'il arrive.

    Ton code n'est pas portable, et il manque un fflush (stdout) ou un '\n' explicite... Mais on s'est bien marré quand même...

  8. #8
    Membre émérite Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    Le cast est inutile. un char est automatiquement et implicitement promu en int, quoiqu'il arrive.
    Oui en effet, le cast est de trop.

    Citation Envoyé par Emmanuel Delahaye
    Ton code n'est pas portable,
    Pour quelle raison ? A cause du putchar ?
    Citation Envoyé par Emmanuel Delahaye
    et il manque un fflush (stdout) ou un '\n' explicite...
    Oui en effet, j'ai raté un petit morceau lors du copier/coller de mon éditeur héxa. Au temps pour moi...

  9. #9
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par crocodilex
    Pour quelle raison ?
    Il présuppose un charset ASCII. Ne fonctionne pas sur mon AS-400

  10. #10
    Membre émérite Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    Il présuppose un charset ASCII. Ne fonctionne pas sur mon AS-400

    Franchement t'es dur là....

  11. #11
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    Le cast est inutile. un char est automatiquement et implicitement promu en int, quoiqu'il arrive.
    Il n'y a pas de promotion quand on le passe à une fonction avec prototype qui demande un char.

    Mais il manque un cast nécessaire: putchar a comme paramètre un char casté en unsigned char et ensuite converti en int.

  12. #12
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    Il n'y a pas de promotion quand on le passe à une fonction avec prototype qui demande un char.
    C'est certainement techniquement possible, mais je n'en ai jamais vu dans la bibliothèque du C. Ce n'est certainement pas par hasard...

  13. #13
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par Emmanuel Delahaye
    C'est certainement techniquement possible, mais je n'en ai jamais vu dans la bibliothèque du C. Ce n'est certainement pas par hasard...
    La conception de la bibliothèque date d'avant les prototypes. Ca explique pas mal.

Discussions similaires

  1. Scruter l'état d'une imprimante
    Par ivador dans le forum Général Java
    Réponses: 0
    Dernier message: 10/08/2011, 11h47
  2. Imprimer un état dans une imprimante Fichier
    Par olaf_le_preux dans le forum VBA Access
    Réponses: 1
    Dernier message: 05/12/2008, 19h58
  3. Connaitre l'état d'une imprimante.
    Par Shypster dans le forum VB.NET
    Réponses: 1
    Dernier message: 08/01/2008, 06h09
  4. avoir l'état d'une imprimante
    Par ryadh.naouar dans le forum Réseau
    Réponses: 14
    Dernier message: 22/02/2007, 16h10
  5. savoir l'état d'une imprimante réseau par SNMP
    Par ryadh.naouar dans le forum Développement
    Réponses: 3
    Dernier message: 20/02/2007, 13h06

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