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 :

[C++] commande system : encore.


Sujet :

C++

  1. #1
    Membre expérimenté
    Inscrit en
    Mai 2002
    Messages
    251
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 251
    Par défaut [C++] commande system : encore.
    Bonjour,

    J'ai 2 problèmes, que je souhaite vous exposer :

    1°) Je souhaite lancer la commande sdt::system() et à la place de recevoir le résultat de la commande (réussi ou erreur), je souhaite buffuriser ce que cette commande renvoie.
    Par exemple, si je lance un ping, je ne veux pas que system() me renvoie "0" car tout s'est bien passé, mais "ping 127.0.0.1, blah blah..."

    2°) Sur ce principe, mon but est de lancer cette commande : "netsh interface show interface".
    Voici ce que le programme ce que le programme me renvoi et que je veux buffuriser (voir le petit 1 ci-dessus) :

    C:\Documents and Settings\Toto>netsh interface show interface

    État admin État Type Nom de l'interface
    -------------------------------------------------------------------------
    Activé Dédié Connexion 1394
    Activé Dédié Connexion au réseau local 3
    Activé Dédié Connexion au réseau local
    Activé Boucle de rappel Boucle de rappel
    Activé Interne Interne


    Je veux traiter ce retour pour qu'il me reste dans un char* ou autre chose, que "Connexion 1394", "Connexion au réseau local" et "Connexion au réseau local 3".

    Je ne pense pas que Winpcap puisse m'aider (et puis, bonjour la portabilité inter-windows), ni MSDN.

    Merci par avance pour vos réponses.

  2. #2
    Membre Expert
    Homme Profil pro
    edi
    Inscrit en
    Juin 2007
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : edi

    Informations forums :
    Inscription : Juin 2007
    Messages : 940
    Par défaut
    Salut,

    Je pense que tu ne te pose pas correctement la question. "system" est une fonction qui prend en entrée un char* et qui renvoie un entier. Pour autant que je sache, tu ne peux rien en faire d'autre, ce n'est pas un objet dont tu peux extraire des informations.

    Ce que tu peux faire, par contre c'est tenter d'utiliser intelligemment cette fonction. Par exemple, il doit être possible de redigiriger les flux de sortie des fonction appellées via system vers un fichier (de mémoire "commande [param] > fichier_de_sortie.txt" par exemple). Tu peux ensuite lire ce fichier de sortie dans ton programme.

    Je pense à quelque chose comme ça, à l'epsilon des fautes de frappe et autres points auxquels je n'ai pas réfléchi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    string filename("c:app_data\buffer_file.txt");
     
    system("ping www.monsite.com > " + filename);
     
    ifstream fbuffer(filename.c_str());
    string line;
    if(fbuffer)
    {
        while(getline(fbuffer, line)
            traiter(line);
    }
    Je te renvois à cette sectionsection de la faq pour des précisions sur la lecture de fichiers, ligne à ligne ou ensemble avec l'article suivant. Comme je l'ai dit, je ne te garantie pas que le code va fonctionner comme ça, je ne suis même pas sûr que ce soit le bon symbole pour les redirection, mais tu as une piste pour chercher.

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

Discussions similaires

  1. Problème avec l'utilisation de la commande system awk
    Par vbcasimir dans le forum Linux
    Réponses: 3
    Dernier message: 05/10/2004, 16h18
  2. [le retour] commande systeme
    Par ronan99999 dans le forum Windows
    Réponses: 2
    Dernier message: 29/07/2004, 10h11
  3. [langage] Probleme avec commande system et code
    Par Ludo167 dans le forum Langage
    Réponses: 3
    Dernier message: 14/07/2004, 12h01
  4. Prblème avec la commande system
    Par AnneOlga dans le forum C++Builder
    Réponses: 8
    Dernier message: 04/03/2004, 16h05
  5. La commande systeme
    Par sunshine33 dans le forum MFC
    Réponses: 11
    Dernier message: 13/01/2004, 11h34

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