Bonjour , j'aimerais récupérer le status d'un ping dans le cadre d'une classe outil réseaux.
J'envoie un ping et je regarde si un pong arrive.
Pour cela , je copie le flux dans un fichier que je lis après pour voir s'il contient perdus=1.
Mais ca n'arrive pas à voir ça:
En fait c'est du cpp mais c'est pratiquement uniquement des fonctions C.
A par le > .
merci pour votre aide.
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
39
40
41
42
43
44 #include <stdio.h> #include <stdlib.h> #include <string.h> int ping (char ip[50]); int main (void) { int result; char ip[50]; strcpy (ip,"192.168.0.99"); result = ping (ip); printf ("0 pour offline, 1 pour online : %d",result); getchar(); } int ping (char ip[50]) { int result = 1; char commande[100]; strcpy (commande,"ping "); strcat (commande,ip); strcat (commande, " -n 1: -w 200 > temp"); system(commande); FILE * temp; temp = fopen ("temp","r"); char test[50]; while (!feof (temp)) { fscanf (temp,"%s",test); // test correspond à la chaine perdus=1 if (strcmp (test,"perdus=1") == 0 ) { return 0; } printf("%s",test); } fclose(temp); return result; }
Partager