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

C Discussion :

Fonctionnement fonction popen


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2004
    Messages : 30
    Par défaut Fonctionnement fonction popen
    Bonjour, j'utilise dans un programme la fonction popen qui permet de lire la sortie standard d'une commande linux dans un fichier.
    La commande est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    w_command=su -l login -c "cmd"
    L'appel de la fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    f_lect=popen(w_command, "r")
    La commande su demande un password (celui du login) puis le programme bloque totalement.
    J'ai essayé avec , le mot de passe est demandé et le programme continue (la commande cmd est alors exécutée)
    Le problème que dans le programme j'ai besoin du fichier w_lect généré avec popen.
    Quelqu'un a -t-il une explication du blocage de la fonction?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2004
    Messages : 30
    Par défaut
    J'ai un peu avancé dans mes recherches. En fait c'est dû au fait que la commande contient un su -l login -c "commande". Ce su propose un password puis une autorisation.
    Au lieu de mettre le resultat de "commande" dans un fichier, popen récupère autorisation du su. Comment faire pour qu'il prenne en compte la 'commande'?
    J'ai tenté de faire un system(su _l login) puis un popen(chaine,...,"commande") mais le programme s'arrête avec le su.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. la fonction popen()
    Par michelp3 dans le forum Langage
    Réponses: 5
    Dernier message: 23/10/2010, 11h15
  2. Fonctionnement fonction decode
    Par Nako_lito dans le forum SQL
    Réponses: 3
    Dernier message: 22/07/2010, 10h44
  3. [AC-2007] Question sur fonctionnement fonction ou procédure
    Par tibofo dans le forum VBA Access
    Réponses: 5
    Dernier message: 07/05/2010, 21h41
  4. explication fonctionnement fonction
    Par bergoliv dans le forum C++
    Réponses: 5
    Dernier message: 20/01/2009, 19h53
  5. [MySQL] Je cherche à faire fonctionner la fonction ADDTIME sur la version 4.0.13
    Par SURF52 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 21/09/2005, 16h17

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