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 :

gestion des commandes system


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 52
    Par défaut gestion des commandes system
    Bonjour.

    pour un projet je doit faire un ping d'une adresse internet en C.

    j'utilise donc une des commandes system(" ");

    quand j'ai commençais je me suis dit que ça aller être facile jusqu'à que je ne puisse par récupérer l'adresse :/

    voila ma source:


    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
    34
    35
    36
    37
    38
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <windows.h>
    static void purger(void)
    {
        int c;
     
        while ((c = getchar()) != '\n' && c != EOF)
        {}
    }
     
    static void clean (char *chaine)
    {
        char *p = strchr(chaine, '\n');
     
        if (p)
        {
            *p = 0;
        }
     
        else
        {
            purger();
        }
    }
    int main(int argc, char *argv[])
    {
    printf("Nom de l'adresse: "); /*je demande de rentrer l'adresse à tester*/
      fgets(chaine, sizeof chaine, stdin);
      clean(chaine);
      printf("\ntraitement de %s en cour\n", chaine);
      sleep(2000);
      system("ping %s", chaine); /* erreur dut au faite d'argument qui ne conviennent pas */ 
     
      getch();
     return 0;
    }


    comment contourner se problème ? ou alors m'expliquer en détaille comment marche la fonction ping pour la recréer en C



    Merci.

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    la fonction system() ne traite pas les chaines de caractères comme printf(). Il faut passer par une chaine intermédiaire comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    char command[1024];
    sprintf(command, "ping %s", chaine);
    system(command);
    Quant à recréer la fonction ping en C, c'est une autre histoire ...
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 52
    Par défaut
    Merci beaucoup je n'avais pas penser à cette solution

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

Discussions similaires

  1. Gestion des commandes/Actions
    Par rockeye dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 19/03/2009, 08h39
  2. [SOURCE] Gestions des commandes, factures, paiements
    Par itzik92 dans le forum Contribuez
    Réponses: 0
    Dernier message: 28/11/2008, 11h01
  3. C++ / MacOS : Gestion des apis systemes
    Par Clorish dans le forum C++
    Réponses: 0
    Dernier message: 09/04/2008, 10h23
  4. annulation des commandes system au niveau system
    Par riadhz dans le forum Windows
    Réponses: 0
    Dernier message: 14/08/2007, 09h58

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