Executer commande ping [dev-cpp]

Soyez le premier à donner votre avis sur cette source.

Snippet vu 22 360 fois - Téléchargée 33 fois

Contenu du snippet

Voilà un moyen, peut être un peu barbare, d'executer une commande ping sur un reseau local et d'en recevoir le resultat ...

Source / Exemple :


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int ping (char ip[50]);

void main (void)
{
int result;
char ip[50];
strcpy (ip,"129.46.0.2");
result = ping (ip);
printf ("0 pour offline, 1 pour online : %d",result);
getchar();
}

int ping (char ip[50])
{
int result = 0;
char commande[100];
strcpy (commande,"ping ");
strcat (commande,ip);
strcat (commande, " -n 1 > temp");
system(commande);
FILE * temp;
temp = fopen ("temp","r");
char test[50];
while (!feof (temp))
{
      fscanf (temp,"%s",test);
      if (strcmp (test,"TTL=128") == 0)
      {
           result = 1;
      }
}
fclose(temp);
return result;
}

Conclusion :


Si quelqu'un a une autre methode simple, je suis preneur, surtout si elle est plus rapide ...

A voir également

Ajouter un commentaire

Commentaires

Renfield
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
60
xave4552
Messages postés
53
Date d'inscription
dimanche 16 mars 2008
Statut
Membre
Dernière intervention
24 février 2018
1
Salut je suis totalement newbi en c++ je suis ariver a comprendre presque tout le programe mais g une ligne qui me pause problem esque kelkin pourait me la decrir svp
cet ligne est:
strcat (commande, " -n 1 > temp");
KeZyX
Messages postés
5
Date d'inscription
jeudi 24 mai 2007
Statut
Membre
Dernière intervention
7 juin 2007

Salut.Voila,ton prog me plait bien mais je voudrais pouvoir tapper n'importe quelle adresse IP a l'aide d'un scanf.
Mais alors allez savoir pourquoi je n'y arrive pas,j'ai un probleme avec les strcpy je pense car au moment ou je tappe l'adresse et que je la valide,le prog se coupe et j'ai le droit au rapport d'erreures^^.
Quelqu'un pourrait-il m'aider?
iznotek
Messages postés
1
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
18 juillet 2006

tip, top ton prog et malin
(pour ceux qui ne comprenne pas le prog à la premiere lecture: revision du C avec marabout!)
pour gagner du temps, on peut rajoute apres -n 1 : -w 100 ou moins
sur un "bon" reseaux local un ping repond en moins de 10ms e donc en 100 on sai deja que c'est foutu!
a tchaou
arthiolis
Messages postés
4
Date d'inscription
samedi 5 février 2005
Statut
Membre
Dernière intervention
8 octobre 2005

Bonjour

malgré ce que certains peuvent dire ( ui je sais que c'était pour améliorer ) mais je trouve ta source sympathique, et je vais sûrement m'en inspirer je pense pour un pti programme java qui ferait appelle à cette application que tu donnes. Bon on pourrait dire que la méthode est pas optimisée mais bon je le dis pas car je fais les même choses donc... Sinon j'ai mis longtemps pour comprendre comment tu lisais le temp alors que je voyais pas comment il était rempli mais ca y est j'ai trouvé.

Bonne journée les gens.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.