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

Linux Discussion :

Programmation des terminaux


Sujet :

Linux

  1. #1
    Membre éclairé
    Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2004
    Messages : 624
    Points : 681
    Points
    681
    Par défaut Programmation des terminaux
    Bonjour,

    je souhaite programmer un programme qui récupère les informations du terminal (nombre de ligne...)

    J'ai essayé le programme suivant :
    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
    #include <sys/ioctl.h>
     
    // Pour la constante ECHO
    #include <termios.h>
     
    // Pour sgttyb
    #include <sgtty.h> 
     
    void main()
    {
             struct sgttyb tty;
     
             if (ioctl(0, TIOCGETP, &tty) != 0) {
                 return;
             }
     
             tty.sg_flags &= ~ECHO;
     
             ioctl(0, TIOCSETN, &tty);
     
    }
    Le problème c'est qu'il ne trouve pas sgttyb, TIOCGETP et TIOCSETN.

    J'ai beau chercher sur le net, j'inclu les bonnes librairies et j'ai bien les headers du kernel.

    Où sont définit c'est 3 éléments ?

    Merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Points : 376
    Points
    376
    Par défaut
    regarde cette page issu du manuel a propos des ioctl
    http://www.bash-linux.com/unix-man-i...0347d13b093c4b

  3. #3
    Membre éclairé
    Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    624
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2004
    Messages : 624
    Points : 681
    Points
    681
    Par défaut
    Oui mais si mon code doit être compiler sous un FreeBSD par exemple.
    J'attaque des bibliothèques standard donc je devrais trouver la structure sgttyb quelque par ainsi que les constantes définit dans un fichier .h

    Surtout que les codes que j'ai trouvé eux ne définissent pas tout ça à la main

    Surtout que si je regarde le source de la bibliothèque readline, j'inclu les mêmes fichiers

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Points : 376
    Points
    376
    Par défaut
    cela dépend de ton système, fais un find dans /usr/include et tu verras bien

    find /usr/include/. | xargs grep TIOCGETP


    chez moi sous Linux il ne sont pas présent, et sgttyb est stubé
    et sous solaris j ai le tout dans sgtty.h



    ps : regarde dans ioctl_compat.h

  5. #5
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par bubulemaster Voir le message
    Oui mais si mon code doit être compiler sous un FreeBSD par exemple.
    J'attaque des bibliothèques standard donc je devrais trouver la structure sgttyb quelque par ainsi que les constantes définit dans un fichier .h

    Surtout que les codes que j'ai trouvé eux ne définissent pas tout ça à la main

    Surtout que si je regarde le source de la bibliothèque readline, j'inclu les mêmes fichiers
    Ce sont des fonctions BSD non portées sur linux, je te renvoi directement à la liste des ioctls présentes dans le kernel: http://www.kernel.org/doc/man-pages/...tl_list.2.html
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

Discussions similaires

  1. Exécuter un programme des que le poste est allumé
    Par edzodzinam dans le forum Autres Logiciels
    Réponses: 5
    Dernier message: 08/02/2006, 04h08
  2. [DBA] Programmer des jobs
    Par pzou dans le forum Oracle
    Réponses: 14
    Dernier message: 26/01/2006, 16h43
  3. [VBA-E] Toggle button: programmation des actions
    Par micknic dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 30/10/2005, 19h28
  4. Programmation des ports // et/ou séries
    Par sami_c dans le forum Windows
    Réponses: 1
    Dernier message: 17/09/2005, 13h15
  5. Programmer des threads
    Par haypo dans le forum C
    Réponses: 6
    Dernier message: 02/07/2002, 13h53

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