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

Réseau C Discussion :

Lister les interfaces reseau


Sujet :

Réseau C

  1. #1
    Membre régulier Avatar de jehrikhan
    Inscrit en
    Mars 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Points : 89
    Points
    89
    Par défaut Lister les interfaces reseau
    Bonjour a tous,
    j'ai un petit soucis qui a tendance à me faire m'arracher les cheveux

    Je dois, en C++, développer une appli tournant sous Windows XPe qui doit pouvoir lister les connexions réseaux présentent sur le pc. (comme on peut les trouver sur la page "Connexion Réseaux").

    J'ai trouvé des fonctions API comme,"GetAdaptersAddresses" ou "GetAdaptersInfo" qui me permettent de retrouver les noms des connexion, mais, petit hic, on peut avec ces fonction lister uniquement les connexions actives.

    Si une des connexions a été désactivée, plus moyen de la retrouver.

    Première solution qui m'est venue est de lister les connexions réseaux à partir de la base de registre depuis la clé :

    "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}".

    Mais on y trouve également les connexions réseaux ayant été supprimées.
    Par exemple je me retrouve avec des noms de connexions réseau genre :
    "Connexion au réseua local 1"
    "Connexion au réseau local 2"

    Qui n'existent plus depuis un bon moment.

    Merci

  2. #2
    Membre régulier Avatar de jehrikhan
    Inscrit en
    Mars 2008
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 90
    Points : 89
    Points
    89
    Par défaut
    Bon j'ai fini par trouver quelque chose mais c'était foutument bien caché

    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
     
    INetConnectionManager * pMan = 0;
     CoInitialize (NULL);
     HRESULT hres = CoCreateInstance(CLSID_ConnectionManager,0,CLSCTX_ALL,__uuidof(INetConnectionManager),(void**)&pMan);
     if (SUCCEEDED(hres))
     {
        IEnumNetConnection * pEnum = 0;
        hres = pMan->EnumConnections(NCME_DEFAULT, &pEnum);
        if (SUCCEEDED(hres))
        {
          INetConnection * pCon = 0;
          ULONG count;
          bool done = false;
          while (pEnum->Next(1, &pCon, &count) == S_OK && !done)
          {
            NETCON_PROPERTIES * pProps = 0;
            hres = pCon->GetProperties(&pProps);
            if (SUCCEEDED(hres))
            {
    	    String NomConnexion  = pPrpos->pszwName;
    	    String Description      =  pProps->pszwDeviceName;
                DWORD Status          = pProps->Status;
            }
            pCon->Release();
          }
          pEnum->Release();
        }
        pMan->Release();
      }
    A partir de la on peut donc récupérer les noms de toutes les connexions réseau (actives ou non).
    Et a partir de ces noms, on peut récupérer les paramètres des interfaces actives avec la fonction "GetAdaptersAddresses".

    Le paramètre Status permet de récupérer pas mal d'info, notament savoir si la connexion est active ou non, si le cable est débranché, si l'interface est en cours de connexion, etc..

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

Discussions similaires

  1. Centos lister les interface réseau
    Par morgan47 dans le forum Linux
    Réponses: 7
    Dernier message: 24/10/2009, 21h02
  2. [C] Lister les interfaces et les IP associées ?
    Par brolon dans le forum Linux
    Réponses: 3
    Dernier message: 16/01/2008, 14h51
  3. [RESEAU]Lister les connections reseau
    Par hawax dans le forum Windows Forms
    Réponses: 1
    Dernier message: 15/05/2007, 11h45
  4. Lister les interfaces avec ksh
    Par mzt.insat dans le forum Linux
    Réponses: 2
    Dernier message: 31/05/2006, 21h34

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