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 :

statistiques udp à l'aide de iphlpapi


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2008
    Messages : 41
    Points : 28
    Points
    28
    Par défaut statistiques udp à l'aide de iphlpapi
    bonjour
    je suis entrain de faire un petit programme en c++ qui écris dans un fichier des information udp (nombre de paquets perdus et reçus... etc.) j'utilise le header iphlpapi, le problème c'est que quand j'utilise le iphlpapi.h fourni avec le sdsk ça me donne des erreurs mais quand j'utilise une autre version de iphlpapi.h que j'ai trouvé sur internet ça se compile mais à l'exécution le programme ne me donne pas le résultat réel, juste un entier très grand 35333655
    voici le code


    Code C++ : 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
    #include <stdio.h>
    #include <winsock2.h>
    #include <iphlpapi.h>
    #include <iostream>
    #include <fstream>
    using namespace std;
     
    typedef struct _MIB_UDPSTATS {
      DWORD dwInDatagrams;
      DWORD dwNoPorts;
      DWORD dwInErrors;
      DWORD dwOutDatagrams;
      DWORD dwNumAddrs;
    } MIB_UDPSTATS, *PMIB_UDPSTATS;
     
    int main()
    {		  
     MIB_UDPSTATS udpstats;
     ofstream fichier("resultat.txt",ios::out|ios::trunc);
     
    // if (GetUdpStatistics(&udpstats)==NOERROR) {
     
     if(fichier){
       fichier<<"Nombre de datagrammes recus                                   :"<<udpstats.dwInDatagrams<<endl;	//. 
       fichier<<"Nombre de datagrammes recus à un port sans service.(rejetées) :"<<udpstats.dwNoPorts<<endl;	 // 
       fichier<<"Nombre d'erreurs de saisie                                    :"<<udpstats.dwInErrors<<endl;//. 
     
       fichier<<"Nombre de datagrammes de sortie.                              :"<<udpstats.dwOutDatagrams<<endl;//
       fichier<<"Nombre d'entrées en UDP auditeur tableau                      :"<<udpstats.dwNumAddrs<<endl;
     
     
     
     fichier.close();}
     else
    	 cout <<"erreru"<<endl;
    /*}
     else 
    	 fichier<<"GetUdpStatistics failed :"<<GetLastError()<<endl;
    	 */
     
     
     return 0;
    }

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2008
    Messages : 41
    Points : 28
    Points
    28
    Par défaut
    excusez moi pour les erreurs de syntaxe dans le premier message
    le header utilisé est le suivant :

    Code C++ : 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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    #ifndef __IPHLPAPI_H__
    #define __IPHLPAPI_H__ 1
     
    #include <windows.h>
     
    #define MAXLEN_IFDESCR          256
    #define MAXLEN_PHYSADDR         8
    #define MAX_INTERFACE_NAME_LEN  256
     
    #ifndef ANY_SIZE
    # define ANY_SIZE 1
    #endif
     
    /*
     * Interface structure definitions.
     */
    typedef struct _MIB_IFROW
    {
      WCHAR wszName[MAX_INTERFACE_NAME_LEN];
      DWORD dwIndex;
      DWORD dwType;
      DWORD dwMtu;
      DWORD dwSpeed;
      DWORD dwPhysAddrLen;
      BYTE  bPhysAddr[MAXLEN_PHYSADDR];
      DWORD dwAdminStatus;
      DWORD dwOperStatus;
      DWORD dwLastChange;
      DWORD dwInOctets;
      DWORD dwInUcastPkts;
      DWORD dwInNUcastPkts;
      DWORD dwInDiscards;
      DWORD dwInErrors;
      DWORD dwInUnknownProtos;
      DWORD dwOutOctets;
      DWORD dwOutUcastPkts;
      DWORD dwOutNUcastPkts;
      DWORD dwOutDiscards;
      DWORD dwOutErrors;
      DWORD dwOutQLen;
      DWORD dwDescrLen;
      BYTE  bDescr[MAXLEN_IFDESCR];
    } 
    MIB_IFROW, *PMIB_IFROW;
     
     //Interface table structure.
     
    typedef struct _MIB_IFTABLE
    {
      DWORD     dwNumEntries;
      MIB_IFROW table[ANY_SIZE];
    } 
    MIB_IFTABLE, *PMIB_IFTABLE;
     
    /*
     * IP address structure.
     */
    typedef struct _MIB_IPADDRROW
    {
      DWORD          dwAddr;
      DWORD          dwIndex;
      DWORD          dwMask;
      DWORD          dwBCastAddr;
      DWORD          dwReasmSize;
      unsigned short unused1;
      unsigned short unused2;
    } 
    MIB_IPADDRROW, *PMIB_IPADDRROW;
     
    /*
     * IP address table structure.
     */
    typedef struct _MIB_IPADDRTABLE
    {
      DWORD         dwNumEntries;
      MIB_IPADDRROW table[ANY_SIZE];
    } 
    MIB_IPADDRTABLE, *PMIB_IPADDRTABLE;
     
    /*
     * Function call prototypes.
     */
    typedef DWORD (__stdcall *GetIfTableProc) (PMIB_IFTABLE, PULONG, BOOL);
    typedef DWORD (__stdcall *GetIpAddrTableProc) (PMIB_IPADDRTABLE, PULONG, BOOL);
     
    #endif /* not __IPHLPAPI_H__ */

Discussions similaires

  1. Aide pour outil de controle/statistiques site web
    Par kovrov dans le forum Services Web
    Réponses: 3
    Dernier message: 09/12/2010, 14h28
  2. aide tcp/udp/ip toolbox
    Par NEKABSMAIL dans le forum MATLAB
    Réponses: 0
    Dernier message: 17/06/2010, 19h36
  3. Réponses: 2
    Dernier message: 15/02/2010, 13h08
  4. [MySQL] besoin d'aide pour script statistique
    Par samspitz dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 17/10/2008, 16h32
  5. Statistique - Graphique - Aide
    Par nic79 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 16/10/2006, 06h00

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